1.5.4.     Неотределенные или пгхутущенные данные (NOLL)

Для обозначения отсутствующих, пропущенных или не­известных значений атрибута в SQL используется ключевое слово NULL. Довольно часто можно встретить словосочетание «атрибут имеет значение NULL*. Строго говоря, NULL не явля­ется значением в обычном понимании, а используется имен­но для обозначения того факта, что действительное значение атрибута на самом деле пропущено или неизвестно. Это при­водит к ряду особенностей, что следует учитывать при ис­пользовании значений атрибутов, которые могут находиться в состоянии NULL.

* В агрегирующих функциях, позволяющих получать сводную информацию по множеству значений атрибута, например суммарное или среднее значение, для обеспечения точности и однозначности толкования результатов отсутствующие или NULL-значения атрибутов игнорируются.

- Условные операторы от булевой двузначной логики TRUE/FALSE расширяются до трехзначной логики TRUE/FALSE/UNKNOWN.

* Все операторы, за исключением оператора конкатенации строк «||», возвращают пустое значение (NULL), если значение любого из операндов отсутствует (имеет «значение NULL»).

* Для проверки на пустое значение следует использовать опе­раторы is NULL и is NOT NULL (использование с этой целью оператора сравнения «=» является ошибкой).

- Функции преобразования типов, имеющие NULL в качестве аргумента, возвращают пустое значение (NULL).