分类 mysql 下的文章

mysql单表一对多查询,将多条记录合并到一条记录


有时候会遇到运营或者产品同学分析数据,帮忙导出数据的需求。1对多的数据这种导出又希望将对应的数据合并到一个字段上。
数据关系如下图所示:
公司表:

公司表

城市表:

公司城市副表

查出来的城市整理到公司的记录上,后面的GROUP BY语句不能少。

SELECT a.id, GROUP_CONCAT(b.city_code SEPARATOR ",") as online_city FROM vip_company_manage as a 
LEFT JOIN vip_company_city as b ON a.id=b.company_id AND b.`status`=1 GROUP BY a.id;

查询结果:

查询结果