Логическое выражение

Функция

Определение логического выражения.

Спецификация

 
< логический множитель >::=
< первичное логическое выражение >::=

Общие правила

  1. Результатом < логического выражения > будет результат применения логических операций к тем условиям, которые получены при применении заданного < предиката > к данной строке таблицы или к данной группе в сгруппированной таблице. Если логические операции не заданы, то результатом < логического выражения > будет результат заданного < предиката >.

    select make from auto
     where not bodytype ='SEDAN' 
       and (cylnders >6 or weight between 3000 and 4000) 
        or (color like 'В%' and not year=70);
  2. Результатом NOT (TRUE) является значение FALSE, результатом NOT (FALSE) – значение TRUE, результатом NOT (UNKNOWN) – значение UNKNOWN. Операции AND и OR определяются из таблиц истинности, приведенных ниже.

    Примечание

    Логическое значение UNKNOWN в данной версии СУБД ЛИНТЕР не поддерживается.

  3. Выражения внутри скобок вычисляются первыми. Если порядок вычислений не задан, приоритет операций следующий: NOT, AND, OR. Операции одинакового приоритета выполняются слева направо.

  4. Результаты выполнения операции AND:

    AND TRUEFALSEUNKNOWN
    TRUETRUEFALSEUNKNOWN
    FALSEFALSEFALSEFALSE
    UNKNOWNNULLFALSEUNKNOWN
  5. Результаты выполнения операции OR:

    OR TRUEFALSEUNKNOWN
    TRUETRUETRUETRUE
    FALSETRUEFALSEUNKNOWN
    UNKNOWNTRUEUNKNOWNUNKNOWN