【发布时间】:2020-06-15 23:38:34
【问题描述】:
我有 table1 的数据
Age
10
21
35
50
还有我的查询
select count(*) as Total, *
from
(
select
case
when age <18 then '0-20'
when age between 20 and 29 then '20-29'
when age between 30 and 39 then '30-39'
when age between 40 and 49 then '40-49'
when age between 50 and 59 then '50-59'
when age between 30 and 39 then '30-39'
when age between 60 and 99 then '60+'
end as age_range
from table1
) t
group by t.age_range
结果
Total age_range
1 0-20
1 20-29
1 30-39
1 50-59
我希望如何看到这样的结果(缺少 40-49,计数为 0 及以上 60+ 计数为 0)
Total age_range
1 0-20
1 20-29
1 30-39
0 40-49
1 50-59
0 60+
感谢您的帮助。
【问题讨论】:
标签: sql sql-server group-by count left-join