Postgresql 9.1中array_agg的限制

Ere*_*eli 6 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 不起作用.它返回一个空数组.

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

Ere*_*eli 5

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

UI pgAdmin的选项设置为"每列最多字符数",在我的情况下设置为256,这没什么意义.但是你将看起来为空的数组复制并粘贴到记事本中,你会发现所有的数据都在那里.