Если у меня есть таблица данных о возрасте людей, такая как:
Name | Age
--------+-----------
John | 35
Mike | 45
И мне нужно сгруппировать и вывести эти данные в стандартную таблицу, такую как:
Grouper | Count
---------+-------------
Under 50 | 2
Over 50 | 0
Я выполняю запрос, подобный этому (набран быстро, может не работать в реальной жизни. Иллюстрируя ситуацию, когда я использую оператор case
для создания групп):
select
case
when Age <= 50 then 'Under 50'
else 'Over 50'
end as 'Grouper',
count(Age) as 'Count'
from
theTable
group by
'Grouper'
Я получаюответьте следующим образом, поскольку в таблице нет людей старше 50 лет:
Grouper | Count
---------+-------------
Under 50 | 2
Как заставить мои результаты сохранять каждое значение в операторе case, даже если в таблице не найдено значений для него?Я не могу вставить или изменить какие-либо данные или таблицы, это будет сделано исключительно для целей отчетности.