我有一个充满记录的表和一个数组列,现在我想获得该列中所有(唯一)值的列表。获得它的最佳方法是什么?
我试图玩弄unnest,array_agg而string_agg却没有取得任何进展......
(使用 Postgres 9.2)
select distinct unnest(a)
from (values
(array[1, 2]),
(array[2, 3])
) s(a);
unnest
--------
3
1
2
Run Code Online (Sandbox Code Playgroud)
或者聚合在一个数组中:
select array_agg(a order by a)
from (
select distinct unnest(a) as a
from (values
(array[1, 2]),
(array[2, 3])
) s(a)
) s;
array_agg
-----------
{1,2,3}
Run Code Online (Sandbox Code Playgroud)