SUM CASE и NULL: почему сумма в SQL стала пустой

Условные суммы выглядят корректно по отдельности, но итоговое выражение возвращает NULL. Проследите вычисление для группы, в которой одно из условий ни разу не выполнилось.

Выберите ответ и проверьте себя. Продолжить тему можно в курсе Продвинутый SQL: сложные запросы и задачи для собеседований.

Дана таблица orders(manager_id INTEGER, service_type TEXT NOT NULL, amount INTEGER NOT NULL). У менеджера1 одна строка: (1,'consulting',10000); development-заказов нет. SQLite выполняет запрос:
WITH revenue AS (SELECT manager_id, SUM(CASE WHEN service_type='consulting' THEN amount END) AS consulting_rev, SUM(CASE WHEN service_type='development' THEN amount END) AS dev_rev FROM orders GROUP BY manager_id) SELECT manager_id, consulting_rev + dev_rev AS total_rev FROM revenue;
Какое значение total_rev получит менеджер1?

Выберите один вариант
Без регистрации · результат не сохраняется

Связанные задачи