Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

groupConcat

groupConcat

首次引入于:v24.8.0

从一组字符串中计算得到一个拼接而成的字符串,可选地使用分隔符分隔,也可选地限制最大元素数量。

语法

groupConcat[(delimiter [, limit])](expression)

别名: group_concat, string_agg

参数

  • delimiter — 用于分隔拼接值的字符串。此参数为可选;如果未指定,默认为空字符串。String
  • limit — 指定要拼接的最大元素数量的正整数。如果元素数量超过该值,则会忽略多余元素。此参数为可选。UInt*

参数列表

  • expression — 输出待拼接字符串的表达式或列名。String
  • delimiter — 用于分隔拼接值的字符串。此参数为可选;如果未指定,则默认为空字符串,或使用参数中指定的 delimiter。String

返回值

返回一个由列或表达式的值拼接而成的字符串。如果组中没有元素,或仅包含 NULL 元素,且函数未指定仅包含 NULL 值时的处理方式,则结果为值为 NULL 的可空字符串。String

示例

不使用分隔符的基本用法

CREATE TABLE Employees (Name String) ENGINE = Memory;
INSERT INTO Employees VALUES ('John'), ('Jane'), ('Bob');

SELECT groupConcat(Name) FROM Employees;
JohnJaneBob

以逗号作为分隔符 (参数语法)

SELECT groupConcat(', ')(Name) FROM Employees;
John, Jane, Bob

以逗号作为分隔符 (实参语法)

SELECT groupConcat(Name, ', ') FROM Employees;
John, Jane, Bob

限制拼接元素的数量

SELECT groupConcat(', ', 2)(Name) FROM Employees;
John, Jane
Navigation