group_concat函数的语法如下:
SELECT group_concat(column_name SEPARATOR 'separator') FROM table_name GROUP BY group_column;其中,column_name是需要组合的列名,table_name是数据表名,group_column是用于分组的列名,separator是用于分隔每个值的分隔符。
例如,如果大家有一个学生成绩表,包含学生姓名、科目和分数:
+------+--------+-------+ | name | subject| score | +------+--------+-------+ | John | Math | 85 | | John | English| 90 | | Mary | Math | 92 | | Mary | English| 88 | +------+--------+-------+
大家想要按照每个学生的姓名分组,并将他们的科目和分数组合成一个字符串,可以使用以下SQL语句:
SELECT name, group_concat(subject, ':', score SEPARATOR '; ') FROM scores GROUP BY name;结果如下:
+------+---------------------------------------+ | name | group_concat(subject, ':', score) | +------+---------------------------------------+ | John | Math:85; English:90 | | Mary | Math:92; English:88 | +------+---------------------------------------+
在结果中,大家可以看到科目和分数被组合成一个字符串,并以分号和冒号进行分隔。