В SQL у нас нет доступа к оператору StartsWith(), который позволяет нам выполнять текстовую фильтрацию, включая или исключая любое значение, начинающееся с определенного шаблона.
Однако в таких базах данных, как MySQL, мы можем использовать оператор LIKE, который позволяет нам выполнять практически те же операции.
В этом уроке мы познакомим вас со всем, что вам нужно знать при работе с оператором LIKE. Мы начинаем с основ, а затем переходим к более сложным и практичным приложениям.
ПРИМЕЧАНИЕ. В этом руководстве мы покажем, как использовать этот оператор с использованием базы данных MySQL, в частности MySQL версии 80. Но это обязательно будет работать и в MySQL 5.0.
Оператор MySQL LIKE
В SQL мы используем оператор LIKE для фильтрации строк из заданной таблицы на основе определенного символа или набора символов, с которых строка начинается с указанного префикса.
Распространенным вариантом использования является получение записей, соответствующих определенному шаблону в начале значения столбца.
Мы часто используем оператор LIKE в сочетании с оператором SELECT для получения данных, соответствующих указанным критериям.
Хотя синтаксис и форматирование могут различаться в зависимости от того, как используется оператор, ниже показан основной синтаксис оператора в инструкции SELECT:
ВЫБРАТЬ столбец1, столбец2, ...ОТ имя_таблицы
ГДЕ имя_столбца НРАВИТСЯ 'префикс%' ;
В данном синтаксисе:
- Столбец1, Столбец2, …: – представляет столбцы, из которых мы хотим получить данные.
- table_name – устанавливает имя таблицы, которую мы хотим запросить.
- имя_столбца – определяет имя столбца, который мы хотим фильтровать.
- «префикс%» — у нас есть префикс, который позволяет нам указать шаблон, который мы хотим найти, где «%» представляет ноль или более символов.
Пример использования: Найдите фильмы, начинающиеся с Z.
Давайте рассмотрим более практические примеры использования этого оператора для лучшего понимания. В демонстрационных целях мы используем образец базы данных MySQL Sakila.
Не стесняйтесь загружать и устанавливать его или использовать свой собственный набор данных.
Возьмем для примера таблицу «фильм» из базы данных Sakila. Предположим, мы хотим найти любой фильм, название которого начинается с буквы «Z». Мы можем запустить запрос следующим образом:
ВЫБЕРИТЕ название, рейтингИЗ фильма Ф
ГДЕ заголовок НРАВИТСЯ 'С%' ;
В этом запросе мы используем оператор LIKE для получения записей, в которых название фильма начинается с буквы «Z». В префиксе мы используем букву Z с подстановочным знаком «%», который обозначает один или несколько символов.
Полученный результат выглядит следующим образом:
Заключение
В этом уроке мы узнали, как использовать оператор MySQL LIKE для сопоставления символов. Сюда входит использование подстановочного знака «%» для поиска шаблонов в начале значения столбца.