温馨提示×

mysql group_concat用法

小亿
52
2023-12-22 03:53:01
栏目: 云计算
亿速云mysql数据库,读写分离,安全稳定,弹性扩容,低至0.3元/天!! 点击查看>>

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:可选参数,用于排序连接后的值。
  • ASCDESC:可选参数,用于指定排序的顺序,默认为升序排序。
  • SEPARATOR:可选参数,用于指定连接的分隔符,默认为逗号 ,

示例: 假设有以下 students 表:

id name subject
1 John Math
2 Jane Science
3 Alice Math
4 Bob History
5 Tom Science
  1. 连接所有学生的姓名:
SELECT GROUP_CONCAT(name) AS all_names FROM students;

输出:John,Jane,Alice,Bob,Tom

  1. 连接所有学生的姓名,使用分号作为分隔符:
SELECT GROUP_CONCAT(name SEPARATOR ';') AS all_names FROM students;

输出:John;Jane;Alice;Bob;Tom

  1. 连接所有学生所学的科目,并按字母顺序排序:
SELECT GROUP_CONCAT(DISTINCT subject ORDER BY subject ASC) AS all_subjects FROM students;

输出:History,Math,Science

亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>

推荐阅读:mysql group_concat函数的用法是什么

0