GROUP_CONCAT
函数用于将一列的多个值连接为一个字符串,并可以选择使用分隔符来分隔这些值。
语法:
GROUP_CONCAT([disTINCT] expr [,expr ...]
[ORDER BY {unsigned_integer | col_name | expr}
[ASC | DESC] [,col_name ...]]
[SEParaTOR str_val])
参数说明:
-
disTINCT
:可选参数,用于去除重复的值。 -
expr
:要连接的列或表达式。 -
ORDER BY
:可选参数,用于排序连接后的值。 -
ASC
或DESC
:可选参数,用于指定排序的顺序,默认为升序排序。 -
SEParaTOR
:可选参数,用于指定连接的分隔符,默认为逗号,
。
示例:
假设有以下 students
表:
id | name | subject |
---|---|---|
1 | John | Math |
2 | Jane | Science |
3 | Alice | Math |
4 | Bob | History |
5 | Tom | Science |
- 连接所有学生的姓名:
SELECT GROUP_CONCAT(name) AS all_names FROM students;
输出:John,Jane,Alice,Bob,Tom
- 连接所有学生的姓名,使用分号作为分隔符:
SELECT GROUP_CONCAT(name SEParaTOR ';') AS all_names FROM students;
输出:John;Jane;Alice;Bob;Tom
- 连接所有学生所学的科目,并按字母顺序排序:
SELECT GROUP_CONCAT(disTINCT subject ORDER BY subject ASC) AS all_subjects FROM students;
输出:History,Math,Science
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。