2012-02-22 47 views
0

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

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

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

使用组的concat与SEPARATOR表达。

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

你想在工作中ID组,并使用GROUP_CONCAT()来连接所有分组值为一个字段。

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