ВУЗ:
Составители:
Рубрика:
– 97 –
це
ZAKAZY существует, по крайней мере, один заказ, удовлетворяющий услови-
ям: является заказом на данный товар и имеет стоимость не менее
$20000.00.
Инструкция
SELECT, используемая для решения поставленной задачи имеет
вид
SELECTDESCRIPTION
FROMTOVARY
WHEREEXISTS(SELECTID_ORDER
FROMZAKAZY
WHEREZAKAZY.ID_PRD=TOVARY.ID_PRDAND
ZAKAZY.ID_MFR=TOVARY.ID_MFRAND
ZAKAZY.PRICE>=20000.00)
DESCRIPTION
Деталь кузова
В данном случае главный запрос последовательно просматривает все стро-
ки таблицы
TOVARY и для каждой строки выполняется вложенный запрос. Ре-
зультатом вложенного запроса является набор данных, содержащий номера
всех заказов текущего товара на сумму не меньше чем
$20000.00.
Если такие заказы есть (т. е. набор данных не пустой), то проверка
EXISTS
возвращает
TRUE. Если вложенный запрос не возвращает ни одной строки, то
проверка
EXISTS возвращает значение FALSE. Эта проверка никогда не возвра-
щает
NULL.
Многократное сравнение
При проверке на принадлежность результатам вложенного запроса с помо-
щью предиката
IN осуществляется многократное сравнение значения таблицы
главного запроса с набором значений из таблицы вложенного запроса.
В
SQL имеются еще две разновидности множественной проверки, осущест-
вляемые с помощью предикатов
ANY и ALL. С помощью этих предикатов про-
верка осуществляется не только на совпадение, но и на
«больше»или «меньше».
Предикат
ANY сравнивает проверяемое значение с набором данных, выби-
раемых вложенным запросом, используя операторы «=», «», «», «=», «»,
«=». Проверяемое значение поочередно сравнивается с каждым значением из
набора данных. Если любое из этих сравнений дает значение
TRUE, то и провер-
ка
ANY возвращает значение TRUE.
Приведем пример использования предиката
ANY: вывести список служа-
щих, принявших заказ на сумму, большую, чем на
10% от плана.
SELECTFAMILY,NAME
FROMSLUZHASCHIES
WHERE(0.1*QUOTA<ANY(SELECTPRICE_ALL
FROMZAKAZYZ
WHERES.ID_SLZH=Z.ID_SLZH))
Страницы
- « первая
- ‹ предыдущая
- …
- 95
- 96
- 97
- 98
- 99
- …
- следующая ›
- последняя »
