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