Справочник по функциям

LOCATE

Аналог в PostgreSQL:

Возвращает позицию первого вхождения подстроки в строку.

MySQL 8.1
LOCATE(substr, str[, start_position])

Параметры

substrVARCHAR
Искомая подстрока
strVARCHAR
Строка, в которой выполняется поиск
start_positionINTнеобязательный
Позиция, с которой начинается поиск, по умолчанию 1

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

Целое число — позиция, начиная с 1; 0, если подстрока не найдена

Примеры

Позиция слова в строке

MySQL 8.1
SELECT LOCATE('world', 'Hello world');
LOCATE('world', 'Hello world')
7

Поиск с третьей позиции

MySQL 8.1
SELECT LOCATE('a', 'banana', 3);
LOCATE('a', 'banana', 3)
4

Подробности

Позиция всегда отсчитывается от начала строки, даже если задан start_position. Регистр по умолчанию не учитывается.

Смотрите также