Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SQL.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
327.17 Кб
Скачать

Операция Like

Сравнивает строковое выражение с образцом. Формат

Expression Like "pattern"

Часть

Описание

Expression

SQL-выражение, используемое в WHERE

pattern

Строка или литерал, с которым производится сравнение.

Операция Like производит сравнение выражения с шаблоном и возвращает значение True или False. В параметрическом запросе pattern можно запрашивать как параметр. Шаблон может быть задан полностью (Like "Smith") или содержать символы подстановки(Like "Sm*"). Например, чтобы найти все значения поля, начинающиеся на C, нужно указать Like "C*", а Like "P[A-F]###" позволит найти значения, начинающиеся с P, закоторой следует буква от A до F и три цифры.

В следующей таблице приведены примеры использования специальных символов в шаблонах:

Спрособ сравнения

Шаблон

Совпадение (True)

Не совпадение (False)

Несколько символов

a*a

aa, aBa, aBBBa

aBC

*ab*

abc, AABB, Xab

aZb, bac

Специальный символ

a[*]a

a*a

aaa

Несколько символов

ab*

abcdefg, abc

cab, aab

Один символ

a?a

aaa, a3a, aBa

aBBBa

Одна цифра

a#a

a0a, a1a, a2a

aaa, a10a

Интервал символов

[a–z]

f, p, j

2, &

Вне интервала

[!a–z]

9, &, %

b, a

Не цифра

[!0–9]

A, a, &, ~

0, 1, 9

Комбинация

a[!b–m]#

An9, az0, a99

abc, aj0

В Microsoft Access Like можно использовать в выражении запроса и в «вычисляемом» управляюшем элементе. В параметрическом запросе в Like можно использовать параметр.В конструкторе запросов вводится в ячейку Criteria, например, Like "C*".

Пусть таблица Employees содержит поле LastName. Создадим к ней новый запрос, «перетащим» поле LastName в ячейку конструктора, в ячейку Criteria введем

Like [Enter first few letters of name:]&"*"

Если запустить запрос на выполнение, появится окно диалога "Enter first few letters of name:". Если пользователь введет Sm, то запрос будет искать шаблон Sm*.

Операцию можно использовать в свойстве ValidationRule – Like "P[A-F]###" ограничит ввод величинами, соответствующими критерию.

В следующем примере выводится список служащих с именами, начинающимися на буквы от A до D:

SELECT * FROM Employees WHERE LastName Like '[A-D]*';

Операция In

Определяет, совпадает ли значение выражения с одним из перечисленных в списке. Формат

expr [Not] In(value1, value2, . . .)

Часть

Описание

expr

Выражение, указывающее поле, сожержимое которого проверяется

value1, value2

Выражение или список выражений, с которыми сравнивается expr

Если значение найдено в списке, In возвращает True, иначе False. Оператор Not меняет результат на противоположный (нет в списке). В Microsoft Access In можно использовать в выражении запроса и в «вычисляемом» управляюшем элементе.

Заказы, доставленные в указанные города:

SELECT * FROM Orders WHERE ShipRegion In ('Avon','Glos','Som')

Пусть таблица Orders содержит поля ShipCountry и OrderID и нужно создать запрос на заказы для United States, Canada и United Kingdom. Создадим к ней новый запрос, «перетащим» поля ShipCountry и OrderID в ячейки конструктора, в ячейку Criteria для ShipCountry введем In('USA', 'Canada', 'UK'). То же результат получится, если ввести "USA" Or "Canada" Or "UK". При большом списке можно комбинировать In и Or.

В «вычисляемом» управляюшем элементе можно использовать In в функции IIf. Например, =IIf([ShipRegion] In ('WA','OR','ID'), "Local", "Nonlocal") воозвращает Local для WA, OR и ID, и Nonlocal для других значений.

Следующий пример выбирает из таблицы Orders базы Northwind.mdb все заказы для Lancashire и Essex:

SELECT * FROM Orders WHERE ShipCity In ('Colchester','Hedge End','London');

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]