Введение в модель данных SQL

Предикат 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: значение NULLtrue false false true
Степень 1: значение отлично от NULLfalse true true false
Степень > 1: у всех элементов значение NULLtrue false false true
Степень > 1: у некоторых(не у всех) элементов значение NULLfalse false true true
Степень > 1: ни у одного элемента нет значения NULLfalse true true false



Содержание  Назад  Вперед