我有以下查询:
SELECT a.rank AS rank, concat( m.prenom, ' ', m.nom ) AS name, d.department
FROM `0_area` AS a
LEFT JOIN 0_member AS m ON a.user_id = m.id
LEFT JOIN 0_depart AS d ON a.user_id = d.user_id
WHERE a.sec_id = 2
AND (a.rank = 'mod' OR a.rank = 'adm')
AND d.department IN ( 75, 92 )
上面的查询返回给我三列,命名rank | name | department
并且它正在工作,针对一个部门的每个等级都有一个单独的行。
rank | name | department
mod | Steven Smith | 75
mod | Jeremy Roy | 92
adm | Vincent Jones | 75
我需要的是在一行中获取所有这些信息,因为我需要将它作为另一个更大查询的一部分,即只返回一行。
我想到了 group_concat,并有两列,一列用于 mod,一列用于 adm。如果有多个模组(在给定示例中为 75、92),它们将用逗号分隔。
mod | adm
Steven Smith, Jeremy Roy | Vincent Jones
我说清楚了吗?谢谢朋友。