SQL LIKE
LIKE
Оператор LIKE используется в предложении WHERE для поиска указанного шаблона в столбце.
Есть два подстановочных знака, часто используемых в сочетании с оператором LIKE:
- % - Знак процента представляет собой ноль, один или несколько символов
- _ - Подчеркивание представляет собой один символ
Примечание: MS Access использует звездочку (*) вместо знака процента (%) и вопросительный знак (?) вместо подчеркивания (_).
Знак процента и подчеркивание также могут использоваться в комбинациях!
Синтаксис LIKE
SELECT column1, column2, ...
FROM table_name
WHERE columnN LIKE pattern;
Совет: Вы также можете комбинировать любое количество условий с помощью операторов AND или OR.
Вот несколько примеров, показывающих различные операторы LIKE с подстановочными знаками '%' и '_':
Оператор LIKE | Описание |
---|---|
WHERE CustomerName LIKE 'a%' | Находит любые значения, которые начинаются с "a" |
WHERE CustomerName LIKE '%a' | Находит любые значения, которые заканчиваются на "a" |
WHERE CustomerName LIKE '%or%' | Находит любые значения, которые имеют "or" в любой позиции |
WHERE CustomerName LIKE '_r%' | Находит любые значения, имеющие букву "r" во второй позиции |
WHERE CustomerName LIKE 'a__%' | Находит любые значения, начинающиеся с буквы "a" и имеющие длину не менее 3 символов |
WHERE ContactName LIKE 'a%o' | Находит любые значения, которые начинаются с "a" и заканчиваются "о" |
Демо база данных
Ниже приведен выбор из таблицы "Customers" в образце базы данных Northwind:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
4 |
Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
Примеры SQL LIKE
Следующая инструкция SQL выбирает всех клиентов с именем клиента, начинающимся с "a":
Следующая инструкция SQL выбирает всех клиентов с именем клиента, оканчивающимся на "a":
Следующая инструкция SQL выбирает всех клиентов с именем клиента, которые имеют "or" в любой позиции:
Следующая инструкция SQL выбирает всех клиентов с именем клиента, которые имеют "r" во второй позиции:
Следующая инструкция SQL выбирает всех клиентов с именем клиента, которое начинается с буквы "a" и имеет длину не менее 3 символов:
Следующая инструкция SQL выбирает всех клиентов с именем контакта, которое начинается с "a" и заканчивается на "o"
Следующая инструкция SQL выбирает всех клиентов с именем клиента, которое не начинается с "a":