WHERE (amt < 1000 OR
NOT (odate = 10/03/1990
AND cnum > 2003 ));
5.Что может быть выведено в результате следующего запроса ?
SELECT *
FROM Orders
WHERE NOT ((odate = 10/03/1990 OR snum > 1006)
AND amt > = 1500 );
6. Как можно проще переписать такой запрос ?
SELECT snum, sname, city, comm
FROM Salespeople
WHERE ( comm > + .12 OR
comm < .14 );
( См. Приложение A для ответов. )
ГЛ.5 ИСПОЛЬЗОВАНИЕ СПЕЦИАЛЬНЫХ ОПЕРАТОРОВ В УСЛОВИЯХ
ПОНИМАНИЕ SQL
В ДОПОЛНЕНИИ К РЕЛЯЦИОННЫМ И БУЛЕВСКИМ операторам обсуждаемым в Главе 4, SQL использует специальные операторыIN, BETWEEN, LIKE,и IS NULL. В этой главе, вы узнаете как их использовать и как реляционные операторы позволяют создавать более сложные и мощные предикаты.
Обсуждение оператора IS NULL будет включать отсутствие данных и значение NULL, которое указывает на то: что данные отсутствуют. Вы также узнаете о разновидностях использования оператора NOT применяющегося с этими операторами.
============ ОПЕРАТОР IN ===============
Оператор IN определяет набор значений в которое данное значение может или не может быть включено. В соответствии с нашей учебной базой данных на которой вы обучаетесь по настоящее временя, если вы хотите найти всех продавцов, которые размещены в Barcelona или в London, вы должны использовать следующий запрос ( вывод показывается в Рисунке 5.1 ):
SELECT *