如何将所有记录中的所有整数数组合并到Postgres中的单个数组中
技术问答
283 人阅读
|
0 人回复
|
2023-09-14
|
我有一列是整数数组类型。如何将所有这些合并到单个整数数组中?/ V) K; [! X4 ]. R
例如:如果我执行查询:
* J: L2 o: g1 m0 sselect column_name from table_name
$ Y, q# X& u) U. Y, ]' |. L4 M+ \我得到的结果集为:
( }& f+ M& F5 Q7 u2 n$ ]- S. W( g% {-[RECORD 1]---------- ?. Z- r B9 x" p i
column_name | {1,2,3}6 r+ w# A2 [* d7 D
-[RECORD 2]----------
& |# r" H' o9 ]9 u. ]column_name | {4,5}# I* o9 o, A4 x' N2 o# u
如何获得{1,2,3,4,5}最终结果?
h6 S5 o8 J8 y2 D! w$ o - @% u# G4 K+ n4 f
解决方案:6 I8 m; h+ `. V
8 [. T) [' U' G0 m% J8 C) D' ]
* a# l6 a7 s/ a# L8 D7 _3 U
, d, U' R% t) t2 H 您可以unnest用来打开阵列,然后array_agg将它们放回一起:
5 ^* }$ M7 m% Hselect array_agg(c)
: I1 x/ `* `, x) \from (% @9 ]4 a( \( F' t7 C5 |3 i
select unnest(column_name)' s6 v! V u3 i8 a5 ?4 v
from table_name
U% @ c' l: Z8 s) as dt(c); |
|
|
|
|
|