Логические операторы#
Оператор |
Описание |
Пример |
|---|---|---|
|
Истина, если оба значения истинны |
a AND b |
|
Истина, если любое значение истинно |
a OR b |
|
Истина, если значение ложно |
NOT a |
Влияние NULL на логические операторы#
Оператор AND возвращает NULL, если один из аргументов равен NULL, а другой аргумент равен NULL или TRUE:
SELECT CAST(null AS boolean) AND true; -- null
SELECT CAST(null AS boolean) AND false; -- false
SELECT CAST(null AS boolean) AND CAST(null AS boolean); -- null
Оператор OR возвращает NULL, если один из аргументов равен NULL, а
другой аргумент равен NULL или FALSE:
SELECT CAST(null AS boolean) OR true; -- true
SELECT CAST(null AS boolean) OR false; -- null
SELECT CAST(null AS boolean) OR CAST(null AS boolean); -- null
Таблица истинности AND и OR:
a |
b |
a AND b |
a OR b |
|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
NOT NULL возвращает NULL:
SELECT NOT CAST(null AS boolean); -- null
Таблица истинности NOT:
a |
NOT a |
|---|---|
|
|
|
|
|
|