mysql中GROUP_CONCAT用法
语法:
group_concat([DISTINCT] 要连接的字段 [ORDER BY 排序字段 ASC/DESC] [Separator '分隔符'])
select teachId,studentName from bs_student
| teachId | studentName |
| 1 | 张三 |
| 1 | 李四 |
| 1 | 张三 |
| 2 | 王五 |
按teachId分组,将studentName显示在一行(默认以逗号分割)
select teachId,group_concat(studentName) as name from bs_student group by teachId
teachId |
name |
| 1 | 张三,李四,张三 |
| 2 | 王五 |
按teachId分组,将studentName显示在一行,并对studentName去重(默认以逗号分割)
select teachId,group_concat(DISTINCT studentName) name from bs_student group by teachId
teachId |
name |
| 1 | 张三,李四 |
| 2 | 王五 |
按teachId分组,将studentName显示在一行,并对studentName去重且倒叙排序(默认以逗号分割)
select teachId,group_concat(DISTINCT studentName ORDER BY studentName DESC) name from bs_student group by teachId
teachId |
name |
| 1 | 李四,张三 |
| 2 | 王五 |
按teachId分组,将studentName显示在一行,并对studentName去重且倒叙排序,并以分号分割
select teachId,group_concat(DISTINCT studentName ORDER BY studentName DESC SEPARATOR ';') name from bs_student group by teachId
teachId |
name |
| 1 | 李四;张三 |
| 2 | 王五 |
注意:使用group_concat有长度限制,默认1024,若超出会将超出部分自动截掉
业精于勤,大家加油鸭

浙公网安备 33010602011771号