MySQL数据库中,使用 group by 时,不重复字段如何拼接显示

就不写文字描述了,直接用图和sql来表述吧。

这是测试数据,表名为 person 

现在,我想按照性别进行分组,也就是字段 sex ,同时能将分组后的姓名全部显示出来。

sql 语句如下:

SELECT sex, GROUP_CONCAT(name) as name from person GROUP BY sex

搜索结果如下图所示

不指定分隔符的情况下,默认使用的字符是英文 “,” ,如果想使用特定的分隔符,需要在 sql 语句中指定。

SELECT sex, GROUP_CONCAT(name SEPARATOR ';') as name from person GROUP BY sex

搜索结果如下所示

 如果要对分组后的字段进行排序显示,使用 sql 如下

SELECT sex, GROUP_CONCAT(name ORDER BY id DESC SEPARATOR ';') as name from person GROUP BY sex

搜索结果如下

原文地址:https://www.cnblogs.com/hs2018/p/9494208.html