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