sql string cat作为聚合函数:cat将多个记录放在一起

luc*_*uca 4 mysql sql

我有一个包含列的表:(project_id,name)

这是一个人员列表,每个人都有自己所属的项目.如果一个人在两个项目中,则会重复.

我想提取一个包含列的表:( project_id,people)其中people是一个字符串cat,其中包含该项目所有人的名字.猫必须以逗号分隔,如下所示:

12, john
12, mark
12, dave
14, luke
Run Code Online (Sandbox Code Playgroud)

12, "john, mark, dave"
14, "luke"
Run Code Online (Sandbox Code Playgroud)

Ten*_*eff 8

你可以通过简单的查询来做到这一点

SELECT project_id, GROUP_CONCAT(name) as people
FROM table
GROUP BY project_id
Run Code Online (Sandbox Code Playgroud)

如果你坚持逗号之后有空格:

SELECT project_id, GROUP_CONCAT(name SEPARATOR ", ") as people
FROM table
GROUP BY project_id
Run Code Online (Sandbox Code Playgroud)