无法聚合数组

前端之家收集整理的这篇文章主要介绍了无法聚合数组前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我可以创建一个数组数组:
select array[array[1,2],array[3,4]];
     array     
---------------
 {{1,2},{3,4}}

但我不能聚合数组:

select array_agg(array[c1,c2])
from (
    values (1,2),(3,4)
) s(c1,c2);
ERROR:  could not find array type for data type integer[]

我错过了什么?

我用:
CREATE AGGREGATE array_agg_mult(anyarray) (
    SFUNC = array_cat,STYPE = anyarray,INITCOND = '{}'
);

查询如下:

SELECT array_agg_mult( ARRAY[[x,x]] ) FROM generate_series(1,10) x;

请注意,您必须聚合二维数组,因此您通常希望将输入数组包装在单元素ARRAY [array_to_aggregate]数组构造函数中.

猜你在找的设计模式相关文章