我正在编写pl / pgsql函数来进行一些统计处理。使用8.2的postgres。我想使用这个方便的聚合函数:
regr_slope(Y,X)
但是,我将我的X和Y数据存储为pl / pgsql函数中的本地数组: y double precision []; x double precision [];
麻烦是我在pl / pgsql函数中使用它作为一行:
斜率:= regr_slope(y,x);
我收到一条错误消息,说明该功能不可用或参数错误。我怀疑这是因为输入应该被选为表中的列,而不是作为双精度数组传递。
有没有办法用本地数组生成regr_slope函数? (即,某种方式将数组转换为聚合函数的有效输入?)
谢谢。答案 0 :(得分:1)
SELECT regr_slope(x,y) INTO slope FROM (SELECT unnest(ARRAY[1,2,3,4]) as x, unnest(ARRAY[5,6,7,8]) AS y) AS z;