1. 程式人生 > 其它 >MySQL中group_concat函式的使用(mysql中多行結果合併為一行)

MySQL中group_concat函式的使用(mysql中多行結果合併為一行)

技術標籤:mysql

MySQL中group_concat函式
完整的語法如下:

group_concat([DISTINCT] 合併欄位 [Order BY 排序欄位 ASC/DESC] [Separator '分隔符'])

原始表

SELECT * FROM test.student;

在這裡插入圖片描述
以name分組,把dept欄位的值列印在一行,逗號分隔(預設)

select name, group_concat(dept) from test.student group by name;

在這裡插入圖片描述
以name分組,把dept欄位的值列印在一行,“/”分隔

select name, group_concat(
dept separator '/') from test.student group by name;

在這裡插入圖片描述
以name分組,把dept欄位的值列印在一行,去冗餘

select name, group_concat(distinct dept separator '/') from test.student group by name;

在這裡插入圖片描述
以name分組,把id欄位的值列印在一行,以id倒序

select name, group_concat(id order by id desc) from test.student group by name;

在這裡插入圖片描述