Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЯЗЫК SQL.doc
Скачиваний:
17
Добавлен:
16.11.2018
Размер:
903.17 Кб
Скачать
  • between;

  • in, not in;

  • like, not like

  • Is null;

  • all, some, any;

  • exists;

  • unique;

  • distinct;

  • overlaps;

  • match;

  • SIMILAR.

BETWEEN

Предикат between (между) позволяет задать выражение провер­ки вхождения какого-либо значения в диапазон, определяемый граничными значениями. Например:

WHERE Сумма_заказа BETWEEN 100 AND 750

Здесь ключевое слово and представляет собой логический союз И. Граничные значения (в примере это 100 и 750) входят в диапа­зон. Причем первое граничное значение должно быть не больше второго.

Эквивалентным приведенному является выражение с предика­тами сравнения:

WHERE Сумма_заказа >= 100 AND Сумма_заказа <= 750

Кроме данных числового типа, в выражениях с beetween можно использовать данные следующих типов: символьные, битовые, даты-времени. Так например, чтобы выбрать записи, в которых имена клиентов находятся в диапазоне от А до Ж, можно ис­пользовать такое выражение:

SELECT Имя, Адрес FROM Клиенты WHERE Имя BETWEEN 'A' AND 'Ж';

IN и NOT IN

Предикаты in (в) и not in (не в) применяются для проверки вхождения какого-либо значения в заданный список значений. Например, для выборки записей о клиентах из некоторых ре­гионов можно использовать такое выражение:

SELECT.Имя, Адрес FROM Клиенты

WHERE Регион IN ('Северо-запад', 'Ставропольский край', 'Иркутская обл');

Если требуется получить данные о всех клиентах не из Москвы и Северо-запада, то можно использовать предикат not in:

SELECT Имя, Адрес FROM Клиенты

WHERE Регион NOT IN ('Москва', 'Санкт-Петербург');

LIKE и NOT LIKE

Предикаты like (похожий) и not like (не похожий) применя­ются для проверки частичного соответствия символьных строк.

Например, столбец телефон в некоторой таблице содержит пол­ные номера телефонов, а вам требуется выбрать лишь те записи, в которых номера телефонов начинаются с 348 или содержат такое сочетание цифр.

Критерий частичного соответствия задается с помощью двух символов-масок: знака процента (%) и подчеркивания (_). Знак процента означает любой набор символов, в том числе и пустой, а символ подчеркивания — любой одиночный символ.

Например, чтобы выбрать записи о клиентах, у которых номера телефонов начинаются с 348, можно использовать такое выра­жение:

SELECT Имя, Адрес, Телефон FROM Клиенты

WHERE Телефон LIKE '348%';

Допустим, столбец Адрес содержит полный почтовый адрес (ин­декс, название города, улицы и т. д.). Если требуется вы­брать записи о клиентах, проживающих в Санкт-Петербурге, то для этого подойдет следующее выражение:

SELECT Имя, Адрес, Телефон FROM Клиенты

WHERE Адрес LIKE '%Санкт-Петербург%';

Если хотим исключить всех клиентов, проживающих в Мо­скве, то воспользуйтесь таким выражением:

SELECT Имя, Адрес, Телефон FROM Клиенты

WHERE Адрес NOT LIKE '%Москва%';

Возможно, вам потребуется выбрать записи, содержащие симво­лы процента и/или подчеркивания. Тогда необходимо, чтобы такие символы воспринимались интерпретатором SQL не как символы-маски. Чтобы знак процента или подчеркивания вос­принимался буквально, перед ним необходимо указать специ­альный управляющий символ. Этот символ можно определить произвольно, лишь бы он не встречался в качестве элемента данных.

В следующем примере показано, как это можно сделать:

SELECT Имя, Адрес, Процент_скидки FROM Клиенты

WHERE Процент_скидки LIKE '20#%' ESCAPE '#';

Здесь за ключевым словом escape указывается символ, который используется в качестве управляющего. Таким же способом можно отключить и сам управляющий символ.