group_concat

description

Syntax

VARCHAR GROUP_CONCAT([DISTINCT] VARCHAR str[, VARCHAR sep] [ORDER BY { col_name | expr} [ASC | DESC]])

该函数是类似于 sum() 的聚合函数,group_concat 将结果集中的多行结果连接成一个字符串。第二个参数 sep 为字符串之间的连接符号,该参数可以省略。该函数通常需要和 group by 语句一起使用。

SinceVersion 1.2支持Order By进行多行结果的排序,排序和聚合列可不同。

example

  1. mysql> select value from test;
  2. +-------+
  3. | value |
  4. +-------+
  5. | a |
  6. | b |
  7. | c |
  8. | c |
  9. +-------+
  10. mysql> select GROUP_CONCAT(value) from test;
  11. +-----------------------+
  12. | GROUP_CONCAT(`value`) |
  13. +-----------------------+
  14. | a, b, c, c |
  15. +-----------------------+
  16. mysql> select GROUP_CONCAT(DISTINCT value) from test;
  17. +-----------------------+
  18. | GROUP_CONCAT(`value`) |
  19. +-----------------------+
  20. | a, b, c |
  21. +-----------------------+
  22. mysql> select GROUP_CONCAT(value, " ") from test;
  23. +----------------------------+
  24. | GROUP_CONCAT(`value`, ' ') |
  25. +----------------------------+
  26. | a b c c |
  27. +----------------------------+
  28. mysql> select GROUP_CONCAT(value, NULL) from test;
  29. +----------------------------+
  30. | GROUP_CONCAT(`value`, NULL)|
  31. +----------------------------+
  32. | NULL |
  33. +----------------------------+

keywords

GROUP_CONCAT,GROUP,CONCAT