9.1. Логические операторы #

Набор логических операторов включает обычные:

boolean AND booleanboolean
boolean OR booleanboolean
NOT booleanboolean

В SQL работает логическая система с тремя состояниями: true (истина), false (ложь) и NULL, «неопределённое» состояние. Рассмотрите следующие таблицы истинности:

aba AND ba OR b
TRUETRUETRUETRUE
TRUEFALSEFALSETRUE
TRUENULLNULLTRUE
FALSEFALSEFALSEFALSE
FALSENULLFALSENULL
NULLNULLNULLNULL

aNOT a
TRUEFALSE
FALSETRUE
NULLNULL

Операторы AND и OR коммутативны, то есть от перемены мест операндов результат не меняется. (Однако левый операнд не обязательно будет вычисляться перед правым. Более подробно порядок вычисления подвыражений описывается в Подразделе 4.2.14.)