Значение NULL SQL

Значения NULL представляют собой отсутствующие未知ные данные.

По умолчанию, колонки таблицы могут хранить значения NULL.

Эта глава объясняет операторы IS NULL и IS NOT NULL.

Значение NULL SQL

Если某个列表是可选的, то мы можем вставить новую запись или обновить существующую запись, не добавляя значения в эту колонку. Это означает, что это поле будет сохранено с значением NULL.

Обработка значений NULL отличается от обработки других значений.

NULL используется в качестве占位ника дляunknown илинедоступных значений.

Примечание:NULL и 0 не могут быть сравниваются; они не эквивалентны.

Обработка NULL значений в SQL

Смотрите таблицу "Persons":

Id LastName FirstName Адрес Город
1 Adams John   Лондон
2 Bush George Фifth Avenue Нью-Йорк
3 Carter Thomas   Пекин

Предположим, что столбец "Address" в таблице "Persons" является опциональным. Это означает, что если в столбец "Address" вставить запись без значения, столбец "Address" будет использовать NULL значение для сохранения.

Так как же мы можем тестировать NULL значения?

Необходимо использовать сравнительные операторы для тестирования NULL значений, такие как =, <, или <>.

Мы должны использовать операторы IS NULL и IS NOT NULL.

SQL IS NULL

Как мы можем выбрать только записи, у которых в столбце "Address" есть NULL значения?

Мы должны использовать оператор IS NULL:

SELECT LastName,FirstName,Address FROM Persons
WHERE Address IS NULL

Результаты:

LastName FirstName Адрес
Adams John  
Carter Thomas  

Совет:Всегда используйте IS NULL для поиска NULL значений.

SQL IS NOT NULL

Как мы можем выбрать записи, у которых в столбце "Address" нет NULL значений?

Мы должны использовать оператор IS NOT NULL:

SELECT LastName,FirstName,Address FROM Persons
WHERE Address IS NOT NULL

Результаты:

LastName FirstName Адрес
Bush George Фifth Avenue

В следующем разделе мы рассмотрим функции ISNULL(), NVL(), IFNULL() и COALESCE().