PostgreSQL 多行变一行
发布时间:2020-12-13 17:20:59 所属栏目:百科 来源:网络整理
导读:实例表: postgres=# d book2 Table "public.book2" Column | Type | Modifiers --------+-------------------+---------------------------------------------------- id | integer | not null default nextval('book2_id_seq'::regclass) name | characte
实例表: postgres=# d book2 Table "public.book2" Column | Type | Modifiers --------+-------------------+---------------------------------------------------- id | integer | not null default nextval('book2_id_seq'::regclass) name | character varying | tag | character varying | postgres=# select * from book2; id | name | tag ----+------+----- 1 | java | aa 1 | java | bb 1 | java | cc 2 | C++ | dd 2 | C++ | ee (5 rows)需要的效果: name | string_agg ------+------------ C++ | dd,ee java | aa,bb,cc (2 rows)
postgres=# select name,string_agg(tag,',') from book2 group by name; name | string_agg ------+------------ C++ | dd,cc (2 rows)
方法2:array_agg(字段名) postgres=# select name,array_agg(tag) from tb3 group by name; name | array_agg ------+------------ c++ | {dd,ee} java | {aa,cc} (2 rows)<strong> </strong>postgres=# select name,array_to_string(array_agg(tag),') from tb3 group by name; name | array_to_string ------+----------------- c++ | dd,cc (2 rows) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |