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

Функция

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

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

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

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

  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