Логические операторы
Среди логических операторов имеются обычные:
boolean AND boolean → boolean
boolean OR boolean → boolean
NOT boolean → boolean
SQL использует трехзначную логическую систему: true (истина), false (ложь) и NULL («не определено»). Рассмотрите следующие таблицы истинности:
a | b | a AND b | a OR b |
---|---|---|---|
TRUE | TRUE | TRUE | TRUE |
TRUE | FALSE | FALSE | TRUE |
TRUE | NULL | NULL | TRUE |
FALSE | FALSE | FALSE | FALSE |
FALSE | NULL | FALSE | NULL |
NULL | NULL | NULL | NULL |
.
a | NOT a |
---|---|
TRUE | FALSE |
FALSE | TRUE |
NULL | NULL |
Операторы AND
и OR
являются коммутативными, то есть левый и правый операнд
можно менять местами, не влияя на результат. (Однако нет гарантии, что левый
операнд будет вычисляться перед правым. Дополнительную информацию о порядке
вычисления подвыражений см. в разделе Правила вычисления выражений.)