ВУЗ:
Составители:
Рубрика:
– 83 –
Здесь в качестве константы явно указываются строковые или числовые
значения.
Сравнение столбца с результатом вычисления выражения. В более
сложных ситуациях условие поиска в предложении
WHERE может быть сформу-
лировано при помощи выражения:
<выражение1><оператор><имя_столбца>
Или может использоваться и другой вариант написания условия поиска
<имя_столбца><оператор><выражение2>
Последний способ чаще применяется при использовании механизма вло-
женных подзапросов, речь о которых пойдет ниже. В обоих случаях результат
вычисления выражения сравнивается с содержимым указанного столбца.
Использование логических выражений. Сложные логические выражения
строятся при помощи операторов
AND, OR и NOT. Их использование, а также по-
строение из них сложных выражений подчиняется стандартным правилам, при-
нятым для большинства алгоритмических языков, с одним исключением: опе-
рации отношения в них имеют больший приоритет, чем логические операции,
что избавляет от необходимости расстановки многочисленных скобок.
Пример: получить фамилию и имя служащих из таблиц
SLUZHASCHIE, плюс
город в котором он работает из таблицы
OFFISY. При этом возраст служащего
должен быть не меньше
30 и не больше 50 лет.
SELECTS.FAMILY,S.NAME,О.CITY
FROMSLUZHASCHIES,OFFISYО
WHERE(S.ID_OFC=О.ID_OFC)AND
(S.AGE>=30ANDS.AGE<=50)
Когда СУБД сравнивает значения двух выражений, могут получиться сле-
дующие результаты:
– если значение истинно, то результат проверки имеет значение TRUE;
– если значение ложно, то результат проверки имеет значение FALSE
– если хотя бы одно из выражений имеет значение NULL, то результат провер-
ки имеет значение
NULL.
Следует помнить, что в трехзначной логике
SQL в результат запроса попа-
дают только те строки, для которых условие отбора рано
TRUE. Поэтому строки,
содержащие
NULL‐значения, «исчезают» при выполнении запроса.
Проверка на принадлежность диапазону
Предикат BETWEEN A AND B – принимает значения между A и B. Предикат
истинен, когда сравниваемое значение попадает в заданный диапазон, включая
границы диапазона. Одновременно в стандарте задан и противоположный пре-
дикат
NotBetweenAandB, который истинен только тогда, когда сравниваемое
значение не попадает в заданный интервал, включая его границы.
В условии поиска можно указать, что некоторое значение должно нахо-
диться в интервале между значениями:
<проверяемоевыражение>[NOT]BETWEEN<A>AND<B>
Страницы
- « первая
- ‹ предыдущая
- …
- 81
- 82
- 83
- 84
- 85
- …
- следующая ›
- последняя »
