使用 GROUP_CONCAT() 函数可以完美解决此问题
举例:有如下三张表,区域,产品,区域产品中间表
区域数据如下:
产品数据如下:
区域产品表数据如下:
需求:分页查询区域表,并展示产品名称
SQL实现:
select
a.*,
GROUP_CONCAT(p.name)
from
area a
left join area_product ap on a.id = ap.area_id
left join product p on p.id = ap.product_id
GROUP BY
a.id
结果集: