1. 程式人生 > 其它 >mysql中GROUP_CONCAT用法

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 王五