Логические операторы
Среди логических операторов имеются обычные:
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 являются коммутативными, то есть левый и правый операнд
можно менять местами, не влияя на результат. (Однако нет гарантии, что левый
операнд будет вычисляться перед правым. Дополнительную информацию о порядке
вычисления подвыражений см. в разделе Правила вычисления выражений.)