Логические операторы#
Оператор |
Описание |
Пример |
---|---|---|
|
Истина, если оба значения истинны |
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 |
---|---|
|
|
|
|
|
|