MySQL表中数据是这样的
有两张表 一张表是用户信息表, 应一张表是报名表
用户信息表 user
userId | userName | sex | age |
---|---|---|---|
1 | 小明 | 1 | 12 |
2 | 小花 | 2 | 19 |
3 | 张三 | 1 | 17 |
4 | 王二麻子 | 1 | 45 |
5 | 李四 | 1 | 37 |
报名表 bs
cbsId | bsName | user |
---|---|---|
1 | 足球赛 | 1,2,3 |
2 | 篮球赛 | 2,4,5 |
3 | 拔河 | 1,3,5 |
正常查询用户信息表
select * from u
现在需求是:
bsId | bsName | userName |
---|---|---|
1 | 足球赛 | 小明,小花,张三 |
修改sql为
select bs.bsId, bs.bsName,group_count(user.userName)
from bs left join user on find_in_set(user.userId, bs.bsId)
group by bs.bsId;