Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Выборка с использованием оператора IN (принадлежит)




Предикат IN проверяет, входит ли заданное значение, предшествующее ключевому слову "IN" (например, значение столбца или функция от него) в указанный в скобках список. Если заданное проверяемое значение равно какому-либо элементу в списке, то предикат принимает значение true. Разрешено также использовать конструкцию NOT IN.

В частности, результатом выполнения SQL-запроса, приведенного ни­же

SELECT STOCK, NAME, UNITPRICE

FROM GOODS WHERE UNITPRICE IN (100000, 200000, 500000)

 

является таблица, содержащая информацию о товарах, которых равна 100000, 200000 или 500000:

Оператор IN является краткой записью условия, представляющего со­бой последовательность отдельных сравнений, соединенных между операто­рами OR (или). Предыдущая конструкция SELECT эквивалентна следующей конструкции:

SELECT STOCK, NAME, UNITPRICE

FROM GOODS

WHERE UNITPRICE=100000

OR UNITPRICE=200000

OR UNITPRICE=500000

Как и в случае с оператором BETWEEN можно также использовать конструкцию NOT IN (не принадлежит), например:

SELECT STOCK, NAME, UNITPRICE

FROM GOODS WHERE UNITPRICE NOT IN (100000, 200000,500000)

Выборка с использованием шаблонов

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

SELECT STOCK, NAME, UNITPRICE

FROM GOODS WHERE NAME LIKE "T%"

пользователь может выбрать из базы данных все товары, наименование кото­рых начинается с буквы Т

 

STOCK# NAME UNITPRICE
  Toshiba 1200 600.00
  Turbo Pascal 200.00

Шаблоны в языке SQL описываются с помощью оператора LIKE, ко­торый может быть представлен в виде:

Имя поля LIKE строковая константа

Результат выполнения оператора LIKE принимает значение истина, ес­ли значение в указанном поле соответствует образцу, указанному аргументом строковая константа, символы которой интерпретируются следующим обра­зом:

1) _ (пробел или подчеркивание) - любой одиночный символ;

2) % (процент) - произвольная последовательность символов.

Все другие символы обозначают сами себя. Специальный смысл спе­циальных символов отменяет знак «\». Например, совокупность символов «\%» означает процент, а не последовательность символов.

В приведенном примере конструкция SELECT будет осуществлять вы­борку записей из таблицы GOODS, для которых значение в поле NAME на­чинается с буквы "Т" и содержит далее любую последовательность симво­лов. Например, если из таблицы TAB7 необходимо выбрать все строки, в ко­торых поле string1 содержит «+», а предпоследняя буква «S». то SQL-запрос, реализующий данное условие примет вид:

 

SELECT * FROM TAB7 WHERE stringl LIKE «%+%S_».

Для задания шаблона при организации выборки наряду с оператором LIKE также используется и конструкция MATCHES. Синтаксис оператора MATCHES такой же, как и у оператора LIKE, то есть

Поделиться:





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





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...