根据某个字段将多条记录的某个字段拼接成一个字段(SQL查询)
原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
1
2
3
查询结果:
id questionContent questionOption
1 1+1=? 1
1 1+1=? 2
1 1+1=? 3
1 1+1=? 4
2 1+2=? 3
2 1+2=? 4
2 1+2=? 5
2 1+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`
1
2
3
4
查询结果:
id questionContent questionOptionList
1 1+1=? 1,2,3,4
2 1+2=? 3,4,5,6
善,此即吾所欲也;
划重点,GROUP_CONCAT()函数了解下,并且不要忘了 GROUP BY id
---------------------
来源:CSDN
原文:https://blog.csdn.net/qq_35723367/article/details/79469962