使用Postgres 9.5,我要对GROUP BY中的整数数组进行连接。从文档中可以看出,array_agg应该能够做到这一点,但是我得到了错误消息:
在我的测试集上使用array_dims,我得到了[1:18],[1:24]和[1:48]。我将其视为三个不同长度的一维数组。结果应该是一个维度为[1:90]的单个数组。我在这里缺失了什么?
ERROR: cannot accumulate arrays of different dimensionality
。在我的测试集上使用array_dims,我得到了[1:18],[1:24]和[1:48]。我将其视为三个不同长度的一维数组。结果应该是一个维度为[1:90]的单个数组。我在这里缺失了什么?
select array_agg(oid) from pg_database
- Vao Tsunarray[array[1:18], array[1:24], array[1:48]]
,但这不是有效的多维数组。您需要编写自己的聚合函数来连接数组。 - Łukasz Kamińskiarray_agg({1,2,3},{4,5,6},{7,8,9}) => {{1,4,7},{2,5,8},{3,6,9}}
。是否有一个聚合函数可以连接这样的数组,使得?_agg({1},{2,3},{4,5,6}) => {1,2,3,4,5,6}
? - Derek