Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник EXCEL БД SQL.doc
Скачиваний:
2
Добавлен:
26.11.2018
Размер:
2.62 Mб
Скачать

Оператор like

Используется для сравнения строкового выражения.

Синтаксис

SELECT имена полей

FROM имена таблиц

WHERE выражение Like "образец"

Элемент

Описание

выражение

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

образец

Строка, с которой сравнивается выражение.

Дополнительные сведения

Оператор Like используется для нахождения в поле значений, соответствующих указанному образцу. Для аргумента образец можно задавать полное значение (например, Like “Иванов’) или использовать подстановочные знаки для поиска диапазона значений (например, Like “Ив*”).

Оператор Like используется в выражении для сравнения значений поля со строковым выражением. Например, если в запросе SQL ввести Like "C*", запрос возвратит все значения поля, начинающиеся с буквы "C". В запросе с параметрами можно пригласить пользователя указать искомый образец.

В следующем примере возвращаются данные, начинающихся с буквы «Р», за которой следуют любые буквы от «А» до «Д» и три цифры:

Like "Р[А-Д]###"

Следующая таблица содержит примеры использования оператора Like для тестирования выражений с помощью разных образцов.

* - Любое количество, любых символов

? - Один, любой символ

# - Одна, любая цифра

Тип совпадения

Образец

Совпадение (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

Работа с символами даты

При указании аргумента Условие Отбора, символы дат должны вводиться в американском формате, даже если используется неамериканская версия ядра базы данных Jet. Например, дата 10 мая 1996 года записывается в России как 10.05.96, а в США как 5/10/96. Обязательно заключите даты в символы «решетки» (#), как показано в следующих примерах.

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

SELECT *

FROM Заказы

WHERE ДатаИсполнения = #5/10/96#;

Кроме того, можно применять функцию DateValue, которая поддерживает международные стандарты, заданные в Microsoft Windows®. Например, для отбора записей в американской базе данных создайте текст программы:

SELECT *

FROM Заказы

WHERE ДатаИсполнения = DateValue('5/10/96');

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

SELECT *

FROM Заказы

WHERE ДатаИсполнения = DateValue('10.5.96');

Пример

SELECT [Наименование товара] AS Товар, Годность

FROM Товары

WHERE Годность <= #5/7/96#;

Товары

Наименование товара

Годность

Товар

Годность

Молоко

5/12/96

Творог

5/5/96

Сметана

5/15/96

Пиво

5/3/96

Творог

5/7/96

Пиво

5/3/96

ИТОГОВЫЙ ПРИМЕРЫ

Пусть имеется таблица Товары. Создать итоговую таблицу с наименованием товара и стоимостью не проданного товара при условии, что стоимость непроданного товара должна быть больше ….. .

SELECT Товар, (Количество * Цена) AS Стоимость

INTO Итоговая

FROM Таблица

WHERE (Количество * Цена) > 500

Таблица Итоговая

Товар

Количество

Цена

Товар

Стоимость

Пепси

10

20

Кола

1200

Кола

60

20

Пиво

0

30