Поиск по сайту:
Обещание хорошо тем, что от него всегда можно отказаться (Ш. Талейран).

SQL — Оператор LIKE

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (2 оценок, среднее: 5,00 из 5)
Загрузка...
18.04.2017
SQL - Класс LIKE

Класс LIKE используется для сравнения значения для аналогичных значений с использованием подстановочных знаков. Есть два подстановочных знака, используемые в сочетании с оператором LIKE.

  • Знак процента (%)
  • Подчеркивание (_)

Знак процента представляет ноль, один или несколько символов. Подчеркивание представляет собой одно целое число или символ. Эти символы могут быть использованы в комбинации.

Синтаксис

Базовый синтаксис % и _ выглядит следующим образом:

SELECT FROM table_name
WHERE column LIKE 'XXXX%'

или

SELECT FROM table_name
WHERE column LIKE '%XXXX%'

или

SELECT FROM table_name
WHERE column LIKE 'XXXX_'

или

SELECT FROM table_name
WHERE column LIKE '_XXXX'

или

SELECT FROM table_name
WHERE column LIKE '_XXXX_'

 

Вы можете объединить N число условий с помощью операторов AND или OR. Здесь XXXX может быть любым числовым или строковым значением.

Пример

Следующая таблица содержит несколько примеров, показывающих, часть WHERE, имеющий LIKE с комбинациями знаков «_» «%»

Sr.No.Заявление и описание
1WHERE SALARY LIKE ‘200%’

Находит все значения, которые начинаются с 200.

2WHERE SALARY LIKE ‘%200%’

Находит все значения, которые имеют 200 в любом положении.

3WHERE SALARY LIKE ‘_00%’

Находит все значения, которые имеют 00 во второй и третьей позиции.

4WHERE SALARY LIKE ‘2_%_%’

Находит все значения, которые начинаются с 2, и по меньшей мере, 3-х символов в длину.

5WHERE SALARY LIKE ‘%2’

Находит любые значения, которые заканчиваются на цифру 2.

6WHERE SALARY LIKE ‘2%3’

Находит любые значения, которые имеют 2 во втором положении и в конце значение 3.

7WHERE SALARY LIKE ‘2___3’

Находит любые значения в пять-значным числом, которые начинаются на 2 и заканчивается на 3.

Возьмем реальный пример, рассмотрим таблицу клиентов, имеющих записи, как показано ниже.

+----+----------+-----+-----------+----------+
| ID | NAME     | AGE | ADDRESS   | SALARY   |
+----+----------+-----+-----------+----------+
|  1 | Maxim    |  35 | Moscow    | 21000.00 |
|  2 | AndreyEx |  38 | Krasnodar | 55500.00 |
|  3 | Oleg     |  33 | Rostov    | 34000.00 |
|  4 | Masha    |  35 | Moscow    | 31500.00 |
|  5 | Ruslan   |  34 | Omsk      | 43000.00 |
|  6 | Dima     |  32 | SP        | 45000.00 |
|  7 | Roma     |  34 | SP        | 10000.00 |
+----+----------+-----+-----------+----------+

 

Ниже приведен пример, который будет отображать все записи из таблицы клиентов, где SALARY начинается с 4.

SQL> SELECT * FROM CUSTOMERS
WHERE SALARY LIKE '4%';

 

Это выдаст следующий результат:

+----+----------+-----+-----------+----------+
| ID | NAME     | AGE | ADDRESS   | SALARY   |
+----+----------+-----+-----------+----------+
|  1 | Ruslan   |  34 | Omsk      | 43000.00 |
|  3 | Dima     |  32 | SP        | 45000.00 |
+----+----------+-----+-----------+----------+

 

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Если статья понравилась, то поделитесь ей в социальных сетях:

Читайте также

5 1 голос
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Спасибо!

Теперь редакторы в курсе.