我有一个整型数组的列.如何将它们合并到一个整数数组中?

例如:如果我执行查询:

select column_name from table_name

我得到的结果集是:

-[RECORD 1]----------
column_name | {1,2,3}
-[RECORD 2]----------
column_name | {4,5}

我怎样才能得到{1,2,3,4,5}分作为最终结果?

推荐答案

您可以使用unnest打开数组,然后使用array_agg将它们重新组合在一起:

select array_agg(c)
from (
  select unnest(column_name)
  from table_name
) as dt(c);

Postgresql相关问答推荐

列不明确

Ubuntu 上的 PostgreSQL 安装:找不到initdb命令

使用doobie,如何将Scala case类映射到带有类型tstzmultirange的PostgreSQL列?

使用来自 docker 图像的 postgres 设置 Keycloak 21

无法使用golang在postgresql中使用自定义类型插入/更新数据

连接到 PostgreSQL 时没有属性执行错误

PL/pgSQL 中 PL/SQL %ISOPEN 的类似功能是什么?

如何包装 record_out() 函数?

PostgreSQL SELECT 结果具有不同的 id,它更喜欢来自另一个表的特定值

Psycopg2 在大型 Select 查询中耗尽内存

Rails Migration 使用转换将字符串转换为整数

全文搜索(Postgres)与Elastic search

AWS RDS 公开访问

运算符不存在:integer = integer[] 在使用 ANY 的查询中

如何在 Postgres 中的列上删除唯一约束?

遇到序列化失败的条件是什么?

为什么 PostgreSQL 数组访问在 C 中比在 PL/pgSQL 中快得多?

NOT LIKE 带有 NULL 值的行为

Postgresql varchar 是否使用 unicode 字符长度或 ASCII 字符长度计算?

在子类的 Hibernate 中 for each 表指定不同的序列