groupConcat
Добавленный в: v24.8.0
Вычисляет конкатенированную строку из группы строк, при необходимости разделённых разделителем, и при необходимости ограничивает число элементов.
Синтаксис
groupConcat[(delimiter [, limit])](expression)Псевдонимы: group_concat, string_agg
Параметры
delimiter— строка, используемая для разделения объединённых значений. Этот параметр необязателен; если он не указан, по умолчанию используется пустая строка.Stringlimit— положительное целое число, задающее максимальное количество объединяемых элементов. Если элементов больше, лишние игнорируются. Этот параметр необязателен.UInt*
Аргументы
expression— выражение или имя столбца, возвращающее строки для объединения.Stringdelimiter— строка, используемая для разделения объединённых значений. Этот аргумент необязателен; если он не указан, по умолчанию используется пустая строка или разделитель из параметров.String
Возвращаемое значение
Возвращает строку, состоящую из объединённых значений столбца или выражения. Если в группе нет элементов либо есть только элементы со значением NULL, и функция не задаёт обработку случая, когда присутствуют только значения NULL, результатом будет строка Nullable со значением 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