S02029

错误代码

S02029

报错信息

Row reduction operation [xxx] cannot be used with PIVOT BY. RefId:S02029

错误原因

pivot by 生成的表中,每个分组的结果只返回最后一个元素,因此每组中只有一个元素,不能应用于需要多个参数的函数,如:rowAvg、rowStd、rowVar。如下例,在 pivot by 查询的 select 子句中使用 rowAvg, rowStd 以及 rowVar 函数时,会报错:

arr = 1..10
id = take(1..5,10)
type1 = take(1..2, 10)
type2 = take(1..3, 10)

t = table(arr, id, type1, type2)

select rowAvg(arr, id) from t pivot by type1, type2; // throw exception
select rowStd(arr, id) from t pivot by type1, type2; // throw exception
select rowVar(arr, id) from t pivot by type1, type2; // throw exception

解决方案

检查 pivot by 查询的 select 子句是否符合系统要求。