我在表“vin_temp_table”中有一个week_value列,其中包含以下值。我正在使用带有postgres 8.2的Greenplum数据库。
633
423
389
348
341
326
321
316
301
293
291
1
2
现在我正在尝试从当前列聚合接下来的13个值,并尝试使用以下查询将它们放入数组中但我得到错误“在非聚合上下文postgres中调用array_agg_transfn”。有人可以帮助我吗?谢谢!
select a."Week_value", array_agg(a."Week_value") over(order by prod_name,week_date desc rows between 0 preceding and 12 following)
from vin_temp_table a
因此,例如第一行数组结果包含13个值,包括其自身,直到下一个13列值{633,423,389,348,341,326,321,316,301,293,291,1,2}