【发布时间】:2012-09-13 07:30:15
【问题描述】:
使用array_agg 或array_string 时,数组超过一定大小返回空。
SELECT array_agg(x.id) FROM (SELECT id FROM table LIMIT 500) x - 这有效并返回一个数组。
但是这个查询:SELECT array_agg(x.id) FROM (SELECT id FROM table LIMIT 667) x
不工作。它返回一个空数组。
我很确定这不会达到数组的大小限制。任何想法为什么会发生这种情况?
【问题讨论】:
-
@a_horse_with_no_name 没有。试试
SELECT array_agg(x.id) FROM (SELECT * FROM cast(generate_series(1,1158) as int)as id) x -
我发现了问题所在。限制在于显示环境。
pgAdmin III不会在 UI 中显示数据,但它就在那里。 -
@Ereli 当计时器允许您这样做时,请将其添加为您问题的答案并接受它。
标签: postgresql aggregate-functions postgresql-9.1