Запросы, включающие пустые значения NULL

Оценить
(1 голос)

Фраза null в операторе create table указывает, что специальное значение, называемое null (которое обычно представляет неизвестное или неприменимое значение), допустимо для описываемого столбца. Такие значения отличаются от всех других значений в базе данных. Предложение where в операторе select обычно позволяет вернуть строки, для которых сравнение в результате дает истину. Вопрос при рассмотрении запросов заключается в том, как сравнения, содержащие значения null, должны быть вычислены в предложении where?

Все сравнения со значениями null вернут значение «ложь» (даже если им предшествует отрицание not). Для поиска строк со значениями в столбцах null язык Transact-SQL включает в себя оператор is null. Эта спецификация в предложении where оператора select имеет следующую общую форму:

столбец is  [not] null

Пример 6.14 демонстрирует использование оператора is null.

Запросы, включающие пустые значения NULL

 

Поскольку все сравнения, содержащие значения null, возвращают значение «ложь», в примере 6.15 показано синтаксически корректное, но логически неверное использование null.

 

Запросы, включающие пустые значения NULL

 

Запросы, включающие пустые значения NULL

 

Системная функция isnullo позволяет отобразить заданное в ней значение в качестве замены значения null (пример 6.16).

 

Запросы, включающие пустые значения NULL

 

В примере 6.16 используется заголовок столбца с именем task для столбца job.


Оператор LIKE
Подзапросы
Подзапросы и операторы сравнения
Подзапросы и оператор IN
Подзапросы и операторы ALL

Добавить комментарий


Защитный код
Обновить

© 2018 www.serversql.ru. Все права защищены.