Полный цикл в digital

LIKE и REGEXP - регулярные выражения

LIKE

Оператор LIKE принимает шаблон строки, которому должно соответствовать выражение:

SELECT `список_столбцов` (или*) FROM `имя_таблицы` WHERE `условие` LIKE 'шаблон_строки';
SELECT `список_столбцов` (или*) FROM `имя_таблицы` WHERE `условие` NOT LIKE 'шаблон_строки';

Для определения шаблона могут применяться ряд специальных символов подстановки:

Значение Описание
% Cоответствует любой подстроке, которая может иметь любое количество символов, при этом подстрока может и не содержать ни одного символа. Например, выражение WHERE ProductName LIKE 'Galaxy%' соответствует таким значениям как Galaxy Ace 2 или Galaxy S7
_ Cоответствует любому одиночному символу. Например, выражение WHERE ProductName LIKE 'Galaxy S_' соответствует таким значениям как Galaxy S7 или Galaxy S8

При проверке по шаблону LIKE всегда рассматривается вся строка. Поэтому, если нужно найти последовательность символов где-то в середине строки, шаблон должен начинаться и заканчиваться знаком %.

Чтобы найти в строке буквальное вхождение знака процента или подчёркивания, перед соответствующим символом в шаблоне нужно добавить спецсимвол (экранирование). По умолчанию в качестве спецсимвола выбрана обратная косая черта \.

SELECT * FROM `users` WHERE `age` LIKE '2%';
SELECT * FROM `users` WHERE `age` LIKE '2_';

REGEXP

REGEXP позволяет задать регулярное выражение, которому должно соответствовать значение столбца. В этом плане REGEXP представляет более изощренный и комплексный способ фильтрации, нежели оператор LIKE. REGEXP имеет похожий синтаксис:

SELECT `список_столбцов` (или*) FROM `имя_таблицы` WHERE `условие` REGEXP регулярное_выражение;
SELECT `список_столбцов` (или*) FROM `имя_таблицы` WHERE `условие` NOT REGEXP регулярное_выражение;
Значение Описание
^ Указывает на начало строки
$ Указывает на конец строки
. Соответствует любому одиночному символу
[символы] Соответствует любому одиночному символу из скобок
[начальный_символ-конечный_символ] Соответствует любому одиночному символу из диапазона символов
| Отделяет два шаблона строки, и значение должно соответствовать одну из этих шаблонов
Заполните форму уже сегодня!
Для начала сотрудничества необходимо заполнить заявку или заказать обратный звонок. В ответ получите коммерческое предложение, которое будет содержать индивидуальную стратегию с учетом требований и поставленных задач
Работаем по будням с 9:00 до 18:00. Заявки, отправленные в выходные, обрабатываем в первый рабочий день до 12:00.
Спасибо, ваш запрос принят и будет обработан!
Эйч Маркетинг