溫馨提示×

mysql group_concat用法

小億
49
2023-12-22 03:53:01
欄目: 云計算

GROUP_CONCAT 函數(shù)用于將一列的多個值連接為一個字符串,并可以選擇使用分隔符來分隔這些值。

語法:

GROUP_CONCAT([DISTINCT] expr [,expr ...]
            [ORDER BY {unsigned_integer | col_name | expr}
                [ASC | DESC] [,col_name ...]]
            [SEPARATOR str_val])

參數(shù)說明:

  • DISTINCT:可選參數(shù),用于去除重復的值。
  • expr:要連接的列或表達式。
  • ORDER BY:可選參數(shù),用于排序連接后的值。
  • ASCDESC:可選參數(shù),用于指定排序的順序,默認為升序排序。
  • SEPARATOR:可選參數(shù),用于指定連接的分隔符,默認為逗號 ,。

示例: 假設(shè)有以下 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

0