groupConcat
Вызывает строку соединения из группы строк, разделенных, при желании, разделителем и, при желании, ограниченных максимальным количеством элементов.
Синтаксис
Аргументы
expression
— Выражение или имя столбца, которое выводит строки для соединения.delimiter
— строка, которая будет использоваться для разделения объединенных значений. Этот параметр является необязательным и по умолчанию равен пустой строке или разделителю из параметров, если не указан.
Параметры
delimiter
— строка, которая будет использоваться для разделения объединенных значений. Этот параметр является необязательным и по умолчанию равен пустой строке, если не указан.limit
— положительное целое число, указывающее максимальное количество элементов для объединения. Если присутствует больше элементов, лишние элементы игнорируются. Этот параметр является необязательным.
Если delimiter указан без limit, он должен быть первым параметром. Если указаны как delimiter, так и limit, то delimiter должен предшествовать limit.
Кроме того, если указаны разные разделители в качестве параметров и аргументов, будет использоваться разделитель из аргументов.
Возвращаемое значение
- Возвращает строку, состоящую из объединенных значений столбца или выражения. Если в группе нет элементов или только null элементы, и функция не определяет обработку только для null значений, результатом будет nullable строка со значением null.
Примеры
Входная таблица:
- Основное использование без разделителя:
Запрос:
Результат:
Это объединяет все имена в одну непрерывную строку без разделителя.
- Использование запятой в качестве разделителя:
Запрос:
или
Результат:
Этот вывод показывает имена, разделенные запятой, за которой следует пробел.
- Ограничение количества объединяемых элементов:
Запрос:
Результат:
Этот запрос ограничивает вывод первыми двумя именами, даже если в таблице есть больше имен.