Перейти к основному содержимому
Версия: 2.0.x

split_part

Эта функция разделяет заданную строку по разделителям и возвращает запрошенную часть. (отсчёт начинается с начала)

Синтаксис

VARCHAR split_part(VARCHAR content, VARCHAR delimiter, INT field)

Параметры

content: Строка для разделения. Тип данных: VARCHAR.

delimiter: Разделитель, используемый для разделения строки. Тип данных: VARCHAR.

field: Позиция возвращаемой части. Положительные значения отсчитываются с начала, отрицательные — с конца. Тип данных: INT.

Возвращаемое значение

Возвращает указанную часть разделённой строки. Тип данных: VARCHAR.

Примеры

MySQL > select split_part("hello world", " ", 1);
+----------------------------------+
|split_part('hello world', ' ', 1) |
+----------------------------------+
| hello |
+----------------------------------+

MySQL > select split_part("hello world", " ", 2);
+-----------------------------------+
| split_part('hello world', ' ', 2) |
+-----------------------------------+
| world |
+-----------------------------------+

MySQL > select split_part("hello world", " ", -1);
+----------------------------------+
|split_part('hello world', ' ', -1) |
+----------------------------------+
| world |
+----------------------------------+

MySQL > select split_part("hello world", " ", -2);
+-----------------------------------+
| split_part('hello world', ' ', -2) |
+-----------------------------------+
| hello |
+-----------------------------------+

MySQL > select split_part("hello world", "|", 1);
+----------------------------------+
| split_part('hello world', '|', 1) |
+----------------------------------+
| hello world |
+----------------------------------+

MySQL > select split_part("hello world", "|", -1);
+-----------------------------------+
| split_part('hello world', '|', -1) |
+-----------------------------------+
| hello world |
+-----------------------------------+

MySQL > select split_part("hello world", "|", 2);
+----------------------------------+
| split_part('hello world', '|', 2) |
+----------------------------------+
| |
+----------------------------------+

MySQL > select split_part("abca", "a", 1);
+----------------------------+
| split_part('abca', 'a', 1) |
+----------------------------+
| |
+----------------------------+

MySQL > select split_part("abca", "a", -1);
+-----------------------------+
| split_part('abca', 'a', -1) |
+-----------------------------+
| |
+-----------------------------+

MySQL > select split_part("abca", "a", -2);
+-----------------------------+
| split_part('abca', 'a', -2) |
+-----------------------------+
| bc |
+-----------------------------+

MySQL > select split_part("2019年7月8日", "月", 1);
+-----------------------------------------+
| split_part('2019年7月8日', '月', 1) |
+-----------------------------------------+
| 2019年7 |
+-----------------------------------------+

keyword

SPLIT_PART,SPLIT,PART