Mysql查询在新字段中连接未知数量的值

时间:2012-02-22 22:20:44

标签: mysql concatenation

我有一个包含两个字段的表(作业ID,员工姓名)。
我想在一个字段中连接所有员工姓名。
每个工作至少有一名员工,我更喜欢在员工之间使用逗号或任何其他分隔符。

一个例子可以是这样的:
(输入)

J#  Employee name
1   Cathrine
1   Sami
1   Jack
2   Jack
2   John
3   Afshin

(输出)

J#  Employee names
1   Cathrine, Sami, Jack
2   Jack, John
3   Afshin

2 个答案:

答案 0 :(得分:2)

将group concat与SEPARATOR表达式一起使用。

SELECT 
   `job_id` as `Job Id`,
   GROUP_CONCAT(`employee_name` SEPARATOR ", ") AS `Employee Names`
FROM
   `TABLE1`
GROUP BY
    `job_id`

答案 1 :(得分:1)

您希望对作业ID进行分组,并使用GROUP_CONCAT()连接字段的所有分组值。

SELECT job_id AS 'J#', GROUP_CONCAT(employee_name) AS 'Employee names' FROM some_table GROUP BY job_id