Кванторные функции
Функции EVERY, ANY, SOME выполняют проверку истинности набора логических значений.
Синтаксические правила
-
<Значимое выражение>в аргументе должно быть логическим типом данных или приводиться к нему. -
Функция
SOMEявляется синонимом функцииANY.
Общие правила
-
Функция
EVERYвозвращает значениеTRUE, если выражение проверки истинно для всех значений<значимого выражения>, иначе –FALSE. -
Функция
ANY (SOME)возвращает значениеFALSE, если выражение проверки ложно для всех значений<значимого выражения>, иначе –TRUE. -
NULL-значения при вычислении значения функций пропускаются (не учитываются).
Примеры
create or replace table test(i int, b boolean); insert into test values (1, true); insert into test values (1, true); insert into test values (2, true); insert into test values (2, false); insert into test values (3, false); insert into test values (4, true); insert into test values (4, NULL); insert into test values (5, NULL); insert into test values (5, true); insert into test values (6, NULL); select every(b) from test where i = 1; | T| select every(case when i > 5 then true else false end) from test where i = 6; | T| select any(b) from test where i = 1; | T| select some(case when i > 6 then true else false end) from test where i = 6; | F|