Что такое NULL в SQL? Это то же самое, что пробел или пустая строка?

NULL обозначает отсутствующее или неизвестное значение. Это не пробел, не ноль и в большинстве СУБД не пустая строка. Для проверки используют IS NULL и IS NOT NULL.

Короткий ответ

Что ответить на собеседовании

NULL обозначает отсутствующее или неизвестное значение. Это не пробел, не ноль и в большинстве СУБД не пустая строка. Для проверки используют IS NULL и IS NOT NULL.

Подробный разбор

Ответ с пояснениями

NULL обозначает отсутствующее или неизвестное значение. Это не пробел, не ноль и в большинстве СУБД не пустая строка. Для проверки используют IS NULL и IS NOT NULL.

Обычное сравнение с NULL не даёт TRUE: WHERE column = NULL не выбирает строки с пустым значением. COUNT(column) не считает NULL, а COUNT(*) считает строки. У конкретных СУБД есть особенности: например, Oracle трактует пустую символьную строку как NULL, поэтому поведение нужно обсуждать в контексте системы.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку