根据某个字段将多条记录的某个字段拼接成一个字段(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
查询结果:
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`
查询结果:
id | questionContent | questionOptionList |
---|---|---|
1 | 1+1=? | 1,2,3,4 |
2 | 1+2=? | 3,4,5,6 |
划重点,GROUP_CONCAT()函数了解下,并且不要忘了 GROUP BY id
本文参考并借鉴了吴明杰博客中的mysql 根据某个字段将多条记录的某个字段拼接成一个字段,在此感谢;
相关文章推荐
- 在SQL语句中查询多条记录并把多条记录同一字段的值连接成一个字符并返回的写法
- mysql 根据某个字段将多条记录的某个字段拼接成一个字段
- SQL 拼接多个字段的值&一个字段多条记录的拼接
- SQL 拼接多个字段的值&一个字段多条记录的拼接
- SQL 拼接多个字段的值&一个字段多条记录的拼接
- SQL 拼接多个字段的值&一个字段多条记录的拼接
- SQL 拼接多个字段的值&一个字段多条记录的拼接
- mysql 根据某个字段将多条记录的某个字段拼接成一个字段
- mysql 根据某个字段将多条记录的某个字段拼接成一个字段
- 转载:如何写个SQL语句查询一个字段里是否有重复记录如果有只读取其中一条记录
- sql查询语句时怎么把几个字段拼接成一个字段
- SQL 将一个字段内用逗号分隔的内容分成多条记录
- SQL 将一个字段内用逗号分隔的内容分成多条记录
- 根据查询查来的记录,一次执行多条SQL(存储过程)
- Oracle中将查询出的多条记录的某个字段拼接成一个字符串的方法
- SQL查询一个表中类别字段中Max()最大值对应的记录
- SQL 将一个字段内用逗号分隔的内容分成多条记录
- Oracle中将查询出的多条记录的某个字段拼接成一个字符串的方法
- Oracle 删除重复数据只留一条 查询及删除重复记录的SQL语句 1、查找表中多余的重复记录,重复记录是根据单个字段(Id)来判断 select * from 表 wher
- mysql查询根据一个字段或者两个字段内容重复的记录并将其全部删除