您的位置:首页 > 数据库

根据某个字段将多条记录的某个字段拼接成一个字段(SQL查询)

2018-03-07 13:55 417 查看

根据某个字段将多条记录的某个字段拼接成一个字段(SQL查询)

18年,3月6日,遇此疑问,解,乃记,备忘;

原SQL:

SELECT q.`id`, q.`questionContent`, o.`questionOption` FROM `exam_question` q
INNER JOIN `exam_question_option` o ON q.`id` = o.`questionId`
WHERE q.`questionType` = 1


查询结果:

idquestionContentquestionOption
11+1=?1
11+1=?2
11+1=?3
11+1=?4
21+2=?3
21+2=?4
21+2=?5
21+2=?6
非欲也,遂改;

根据 id,将 questionOption 整合在一起;

更改后的SQL:

SELECT q.`id`, q.`questionContent`, GROUP_CONCAT(o.`questionOption`) AS questionOptionList FROM `exam_question` q
INNER JOIN `exam_question_option` o ON q.`id` = o.`questionId`
WHERE q.`questionType` = 1
GROUP BY q.`id`


查询结果:

idquestionContentquestionOptionList
11+1=?1,2,3,4
21+2=?3,4,5,6
善,此即吾所欲也;

划重点,GROUP_CONCAT()函数了解下,并且不要忘了 GROUP BY id

本文参考并借鉴了吴明杰博客中的mysql 根据某个字段将多条记录的某个字段拼接成一个字段,在此感谢;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Mysql GROUP_CONCAT
相关文章推荐