SUBSTRING
Возвращает часть строки: length символов начиная с позиции start.
PostgreSQL 17.5
SUBSTRING(string [FROM start] [FOR length])Параметры
- stringtext
- Исходная строка
- startintegerнеобязательный
- Позиция первого символа, начиная с 1, по умолчанию 1
- lengthintegerнеобязательный
- Количество символов, по умолчанию до конца строки
Возвращаемое значение
Подстрока (text); пустая строка, если start больше длины строки
Примеры
Первые четыре символа
PostgreSQL 17.5
SELECT SUBSTRING(
'PostgreSQL'
FROM 1 FOR 4
);С пятого символа до конца
PostgreSQL 17.5
SELECT SUBSTRING(
'PostgreSQL'
FROM 5
);Запись через запятую
PostgreSQL 17.5
SELECT SUBSTRING('PostgreSQL', 8, 3);Подробности
Аргументы можно передать и через запятую: SUBSTRING(string, start, length).
Если start меньше 1, позиции до начала строки тоже входят в length.
Отрицательная length вызывает ошибку, а не возвращает пустую строку, как в MySQL. Короткая запись функции — SUBSTR.