MySQL — регулярные выражения

Вы видели сопоставление шаблонов MySQL с помощью LIKE …% . MySQL поддерживает другой тип операции сопоставления с образцом на основе регулярных выражений и оператора REGEXP . Если вы знакомы с PHP или PERL, то это очень просто понять, потому что это сопоставление такое же, как и сценарии для регулярных выражений.

Ниже приводится таблица шаблонов, которые можно использовать вместе с оператором REGEXP .

ШаблонКакой шаблон соответствует
^Начало строки
$Конец строки
.Любой одиночный персонаж
[…]Любой символ, указанный в квадратных скобках
[^…]Любой символ, не указанный в квадратных скобках
p1 | p2 | p3Чередование; соответствует любому из шаблонов p1, p2 или p3
*Ноль или более экземпляров предыдущего элемента
+Один или несколько экземпляров предыдущего элемента
{n}n экземпляров предыдущего элемента
{m, n}от m до n экземпляров предыдущего элемента

Примеры

Теперь, основываясь на приведенной выше таблице, вы можете создавать различные типы SQL-запросов в соответствии с вашими требованиями. Здесь я перечисляю некоторые из них для вашего понимания.

Представьте, что у нас есть таблица с именем person_tbl, и в ней есть поле с именем name

Запрос, чтобы найти все имена, начинающиеся с ‘st’

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';

Запрос, чтобы найти все имена, заканчивающиеся на «ок»

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';

Запрос, чтобы найти все имена, которые содержат ‘мар’

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';

Запрос, чтобы найти все имена, начинающиеся с гласной и заканчивающиеся на «ок»

mysql> SELECT FirstName FROM intque.person_tbl WHERE FirstName REGEXP '^[aeiou].*ok$'
Выберите поля, которые будут показаны. Прочие будут скрыты. Перктаскивайте мышкой для изменения порядка полей.
  • Изображение
  • SKU
  • Рейтинг
  • Цена
  • Запасы
  • Доступность
  • В корзину
  • Описание
  • Содержимое
  • Вес
  • Размеры
  • Дополнительная информация
  • Атрибуты
  • Custom attributes
  • Настраиваемые поля
Сравнить
Список желаний 0
Открыть страницу желаний Продолжить покупки