TGViewer
SQL Portal | Базы Данных SQL Portal | Базы Данных @sqlportal · 13.7K subscribers
Post #2099 1.15K
Правильный ответ: Запрос может сработать некорректно, если departments.department_id содержит NULL…

При использовании NOT IN значение NULL в подзапросе может привести к результату сравнения UNKNOWN, из-за чего запрос может не вернуть ни одной строки.

Более надёжный подход:
SELECT e.name
FROM employees e
WHERE NOT EXISTS (
SELECT 1
FROM departments d
WHERE d.department_id = e.department_id
AND d.status = 'inactive'
);


NOT IN
+ NULL = классическая ловушка SQL. Обычно NOT EXISTS — более безопасный выбор.

👉 @SQLPortal
  • 👍 3
More from @sqlportal
  1. Oct 4, 2026Microsoft представила обновления SQL на SQLCon Barcelona 2026 Среди главных направлений —…
  2. Oct 4, 20266 инструментов в закладки бэкенд-разработчику • Hoppscotch — тестирование API и просмотр о…
  3. Oct 3, 2026Post #2122
  4. Oct 3, 2026Вопрос по SQL Посмотрите на запрос: как думаете, какой результат он вернёт и почему? 👉 @S…
  5. Oct 3, 2026В стране 2 000 клиентов. Сколько SQL-запросов этот метод отправит в базу данных? Напишите…
  6. Oct 2, 2026Согласны с этим? Третьего пора повышать? 🙂 👉 @SQLPortal
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →