我有一张下面设计的表格:
SaleDataTbl:
ColumnA
有不同的值,我想将它们分为4个范围:[0-100) , [100-200), [200-300), [300-400]
我想要提到的每个范围的行数,以及ColumnB
和{{1的总和每个范围。我可以通过多个查询来完成,但我可以只使用一个查询吗?
提前致谢
答案 0 :(得分:2)
这不仅仅是一个聚合查询:
select grp, count(*), sum(columnb), sum(columnc)
from (select t.*,
(case when columnA < 100 then '[000-100)'
when columnA < 200 then '[100-200)'
when columnA < 300 then '[200-300)'
when columnA < 400 then '[300-400)'
end) as grp
from t
) t
group by grp
order by grp;
注意: