我的桌子上有这样的数据
id group order value
-------------------------
1 1 1 23
2 1 2 34
3 2 1 234
4 2 2 77
5 2 3 102
我想插入表中,因此每组有一行,其值显示基于顺序的一串用逗号分隔的值。
id group value
----------------
1 1 23,34
2 2 234,77,102
我该怎么做?我正在使用Postgres 9.3
答案 0 :(得分:4)
Postgres支持string_agg()
:
select row_number() over () as id, "group", string_agg(value, ',' order by "order")
from t
group by "group";
答案 1 :(得分:1)
我将看一下PostgreSQL的string_agg聚合函数。