SQL——将一个字段的多个记录合在一行输出

有下表,记为表a:   

        id course
1 a
1 b
1 d
2 a
3 b
3 c
要求查询结果显示如下

     id                       course
1 a,b,d
2 a
3 b,c
SQL代码
SELECT a.id,GROUP_CONCAT(a.course)
FROM a
GROUP BY a.id

#GROUP_CONCAT()  函数

1、功能:将group by产生的同一个分组中的值连接起来,返回一个字符串结果。

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

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


你可能感兴趣的:(sql)