Логическое выражение
Функция
Определение логического выражения.
Спецификация
::=
::=
::=
IS [ NOT] {TRUE | FALSE}
::=
Общие правила
-
Результатом
< логического выражения >
будет результат применения логических операций к тем условиям, которые получены при применении заданного< предиката >
к данной строке таблицы или к данной группе в сгруппированной таблице. Если логические операции не заданы, то результатом< логического выражения >
будет результат заданного< предиката >
.select make from auto where not bodytype ='SEDAN' and (cylnders >6 or weight between 3000 and 4000) or (color like 'В%' and not year=70);
-
Результатом
NOT (TRUE)
является значениеFALSE
, результатомNOT (FALSE)
– значениеTRUE
, результатомNOT (UNKNOWN)
– значениеUNKNOWN
. ОперацииAND
иOR
определяются из таблиц истинности, приведенных ниже.Примечание
Логическое значение
UNKNOWN
в данной версии СУБД ЛИНТЕР не поддерживается. -
Выражения внутри скобок вычисляются первыми. Если порядок вычислений не задан, приоритет операций следующий:
NOT
,AND
,OR
. Операции одинакового приоритета выполняются слева направо. -
Результаты выполнения операции
AND
:AND TRUE FALSE UNKNOWN TRUE TRUE FALSE UNKNOWN FALSE FALSE FALSE FALSE UNKNOWN NULL FALSE UNKNOWN -
Результаты выполнения операции
OR
:OR TRUE FALSE UNKNOWN TRUE TRUE TRUE TRUE FALSE TRUE FALSE UNKNOWN UNKNOWN TRUE UNKNOWN UNKNOWN