22dd04e5

Предикат null


Предикат null позволяет проверить, являются ли неопределенными значения всех элементов строки-операнда:

null_predicate ::= row_value_constructor IS [ NOT ] NULL

Пусть X обозначает строку-операнд. Если значения всех элементов X являются неопределенными, то значением условия X IS NULL является true; иначе - false. Если ни у одного элемента X значение не является неопределенным, то значением условия X IS NOT NULL является true; иначе - false.

Замечание: условие X IS NOT NULL имеет то же значение, что условие NOT X IS NULL для любого X в том и только в том случае, когда степень X равна 1. Полная семантика предиката null приведена в таблице 14.1.

Таблица 14.1.

Вид операндаВид условия

X IS X NULL

IS NOT NULL

NOT X IS NULL

NOT X IS NOT NULL

Степень 1: значение NULL

true

false

false

true

Степень 1: значение отлично от NULL

false

true

true

false

Степень > 1: у всех элементов значение NULL

true

false

false

true

Степень > 1: у некоторых(не у всех) элементов значение NULL

false

false

true



true

Степень > 1: ни у одного элемента нет значения NULL

false

true

true

false



Содержание раздела