Поиск строк начинающихся с заданного текста в SQL
Чтобы найти строки, начинающиеся с определённой последовательности символов в SQL, примените оператор LIKE вместе с шаблонизирующим символом %, который следует после искомой последовательности. Вот как выглядит соответствующий запрос:
SELECT * FROM ваша_таблица WHERE ваш_столбец LIKE 'начало%'; — замените 'начало' на нужное значение
Поиск с использованием подстановочных символов и функций
Между небом и землёй: использование функции LOWER()
Функция LOWER() пригодится тогда, когда важно игнорировать регистр символов. В SQL регистр обычно не играет роли, но на всякий случай вот пример использования функции:
SELECT * FROM ваша_таблица WHERE LOWER(ваш_столбец) LIKE LOWER('начало%');
ПРОФИ-СОВЕТ: Для улучшения производительности запроса, создайте индекс по выражению LOWER(ваш_столбец).
Пробелы и спецсимволы
Убедитесь, что удалены пробелы в начале и в конце строки для точного поиска. Функция TRIM() справляется с пробелами, а ESCAPE поможет обойти специальные символы:
SELECT * FROM ваша_таблица WHERE TRIM(ваш_столбец) LIKE 'начало%' ESCAPE '!'; — убираем пробелы для более точного поиска
COLLATE: игнорируем регистр в MySQL
Пользователям MySQL стоит применять COLLATE для игнорирования регистра в тексте:
SELECT * FROM ваша_таблица WHERE ваш_столбец LIKE 'ста_рт%'; — ищем что-то, что начинается на 'ста', со любыми символами в середине и 'рт' на конце