Psql 拼接对应字符串(比如一个用户对应多个角色,显示用户 和角色)
CREATE TABLE TestTitle (
name VARCHAR(10),
title VARCHAR(20)
);
INSERT INTO TestTitle VALUES ('张三', '程序员');
INSERT INTO TestTitle VALUES ('张三', '系统管理员');
INSERT INTO TestTitle VALUES ('李四', '项目经理');
SELECT
name,
array_to_string(ARRAY(SELECT unnest(array_agg(title))),',') AS allTitle
FROM
TestTitle
GROUP BY
name;
name | alltitle
------+------------------------------
李四 | 项目经理
张三 | 程序员,系统管理员
或者
SELECT
name,
string_agg(title,',') AS allTitle
FROM
TestTitle
GROUP BY
name;
name | alltitle
------+------------------------------
李四 | 项目经理
张三 | 程序员,系统管理员(2 行记录)