关于mysql联合查询一对多的显示结果问题
问题描述
有两张表,一张是user表,一张是user_tag表
user:结构内容如下:id name age1 有马公生 182 宫园薰 16user_tag:结构内容如下:userid tagid remake1 10 10.21 20 10.31 30 10.42 20 10.3
需要在显示user列表时把tagid也要查出来
联合查询:
SELECT `user`.`id`, `user`.`name`, `user`.`age`, `user_tag`.`tagid`FROM `user`LEFT JOIN `user_tag` ON `user`.id = `user_tag`.`userid`
得到的结果是:
id name age tagid1 有马公生 18 101 有马公生 18 201 有马公生 18 302 宫园薰 16 20
这样看起来结果是重复了,如我需要显示userid=1 的结果是
1 有马公生 18 10,20,30
这种或类似的格式,sql语句该怎么写呢?实在不行只能是在程序上实现了!
问题解答
回答1:SELECT `user`.`id`, `user`.`name`, `user`.`age`, GROUP_CONCAT(`user_tag`.`tagid`)FROM `user`LEFT JOIN `user_tag` ON `user`.id = `user_tag`.`userid`GROUP BY `user`.`name`
相关文章:
1. mysql - 在不允许改动数据表的情况下,如何优化以varchar格式存储的时间的比较?2. css - chrome下a标签嵌套img 显示会多个小箭头?3. javascript - 网页打印页另存为pdf的代码一个问题4. vim - docker中新的ubuntu12.04镜像,运行vi提示,找不到命名.5. java中返回一个对象,和输出对像的值,意义在哪儿6. css3 - 纯css实现点击特效7. docker网络端口映射,没有方便点的操作方法么?8. mysql 为什么主键 id 和 pid 都市索引, id > 10 走索引 time > 10 不走索引?9. javascript - Img.complete和img.onload判断图片加载完成有什么区别?10. javascript - 有适合开发手机端Html5网页小游戏的前端框架吗?
