SPLIT_PART
Аналог в MySQL:
Разбивает строку по разделителю и возвращает часть с указанным номером.
PostgreSQL 17.5
SPLIT_PART(string, delimiter, part_number)Параметры
- stringtext
- Исходная строка
- delimitertext
- Разделитель, может состоять из нескольких символов
- part_numberinteger
- Номер части, начиная с 1
Возвращаемое значение
Часть строки (text); пустая строка, если части с таким номером нет; отрицательный номер отсчитывается с конца, а 0 вызывает ошибку
Примеры
Второй элемент по разделителю
PostgreSQL 17.5
SELECT SPLIT_PART('a|b|c', '|', 2);Последний элемент через отрицательный номер
PostgreSQL 17.5
SELECT SPLIT_PART('a|b|c', '|', -1);Фамилия из полного имени
PostgreSQL 17.5
SELECT member_name,
SPLIT_PART(member_name, ' ', 2) AS last_name
FROM FamilyMembers;Подробности
Разделитель — обычная строка, а не регулярное выражение: чтобы разбить строку по шаблону, используйте REGEXP_SPLIT_TO_TABLE. С пустым разделителем вся строка считается первой частью.