Типичный программист | IT, программирование, разработка, ИИ
IT и технологии · 1 октября 2026 г.
Как NULL незаметно меняет результат SQL-запроса
Как NULL незаметно меняет результат SQL-запроса Postgres остановит деление на ноль, а выражение с NULL выполнит без ошибки. Итог при этом может не совпасть с вопросом, который разработчик задал базе. NULL означает «неизвестно»: сравнение с ним тоже даёт неизвестность, а WHERE оставляет только истину. Поэтому phone = NULL не найдёт строки без телефона: нужна проверка IS NULL. NULL в NOT IN тоже может отбросить всю выдачу. Разбор NULL в фильтрах, арифметике, агрегатах и соединениях объясняет, когда использовать IS NULL, NOT EXISTS и COALESCE.