Составители:
Рубрика:
AND Ид_Отд = 1 )
OR Ид_Отд = 2;
то получим результат первого запроса: все сотрудники с должностью Доцент отдела 1 и
все сотрудники отдела 2.
Рассмотрим следующую конструкцию предложения SELECT:
SELECT *
FROM Сотрудник1
WHERE NOT Должность = "Доцент"
OR Оклад > 4500;
NOT применяется здесь только к выражению Должность = "Доцент", но не к
выражению Оклад > 4500 . SQL может применять NOT только к выражению
непосредственно за ним следующим. Вы получите другой результат при команде:
SELECT *
FROM Сотрудник1
WHERE NOT (Должность = "Доцент"
OR Оклад > 4500);
Здесь SQL понимает круглые скобки как означающие, что все внутри них будет
оцениваться первым и обрабатываться как единое выражение с помощью всего, что
снаружи них (это является стандартной интерпретацией в математике). Другими
словами, SQL берет каждую строку и определяет, соответствует
ли истине равенство
Должность="Доцент" или неравенство Оклад > 4500. Если любое условие верно, то
выражение внутри круглых скобок верно. Однако, если выражение внутри круглых
скобок верно, предикат как единое целое неверен, потому что NOT преобразует верно в
неверно и наоборот.
Вывод для этого запроса показывается в рис. 4.10.
Страницы
- « первая
- ‹ предыдущая
- …
- 79
- 80
- 81
- 82
- 83
- …
- следующая ›
- последняя »
