SQL将的同一个分组中的值连接起来,返回一个字符串结果 使用group_concat()

Posted 嘿;-)翔�

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL将的同一个分组中的值连接起来,返回一个字符串结果 使用group_concat()相关的知识,希望对你有一定的参考价值。

在这里插入图片描述
我们在开发过程中编写的SQL:同一个名字出现多次,看上去非常不直观。有没有更直观的方法,既让每个名字都只出现一次,又能够显示所有的名字相同的人的id呢?——使用group_concat()
1、功能:将group by产生的同一个分组中的值连接起来,返回一个字符串结果。

2、语法:group_concat( [distinct] 要连接的字段 [order by 排序字段 asc/desc ] [separator ‘分隔符’] )

说明:通过使用distinct可以排除重复值;如果希望对结果中的值进行排序,可以使用order by子句;separator是一个字符串值,缺省为一个逗号。
3、举例:

例1:使用group_concat()和group by显示相同名字的人的id号:

在这里插入图片描述

例2:将上面的id号从大到小排序,且用’_'作为分隔符:
在这里插入图片描述

例3:上面的查询中显示了以name分组的每组中所有的id。接下来我们要查询以name分组的所有组的id和score:

在这里插入图片描述

以上是关于SQL将的同一个分组中的值连接起来,返回一个字符串结果 使用group_concat()的主要内容,如果未能解决你的问题,请参考以下文章

SQL:按日期分组并对列中的值求和

42 python中正则中的分组 正则中匹配字符串的起始和结尾以及单词边界

MS Access sql将5个表与列中的奇怪字符分组

正则表达式中 如何取出所有组中的值?

连接按列分组的值

SQL如何根据一个字段的某个关键词的前面部分分组查询