Postgresql 9.1中array_agg的限制

时间:2012-09-13 07:30:16

标签: postgresql aggregate-functions postgresql-9.1

使用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 不行。它返回一个空数组。

我很确定这没有达到数组的限制大小。任何想法为什么会发生这种情况?

1 个答案:

答案 0 :(得分:5)

这里的问题不是Postgresql,而是我正在使用的客户端。 pgAdmin III不会显示超过特定大小的数组内容。约4.5k。 使用psql时,不会遇到同样的问题。

pgAdmin的用户界面有一个设置"Max characters per column"的选项,在我的情况下设置为256,这没什么意义。 但你复制&将看似空的数组粘贴到记事本中,你会发现所有数据都存在。