有两张表,
一张为爱好表a表
一张为用户表 b表
a表
id name habId
1 张三 1,2,3,4
2 李四 2,5
b表
id name
1 打乒乓
2 打羽毛球
3 打蓝球
4 上网玩游戏
5 打牌
正常查询a表
select * from a
现在需求是:
id 名称 爱好
1 张三 打乒乓,打羽毛球,打篮球,上网
2 李四 打羽毛球,打牌
修改sql为
-------------------------------------
select
a.id,
a.name,
group_concat(b.name order by b.id)
from a
left join b on find_in_set(b.id,a.habId)
group by a.id;
-----------------------------------------
原文:https://blog.youkuaiyun.com/flymoringbird/article/details/81032669