请教sql语句,将数值分为几个区间,统计每个区间的记录数,一条sql可以实现吗?
表中月100万记录,要求按列fh的值分区间统计记录数
fh 最大值 68566 最小值 234
等分成10个区间(不定,有可能是100个),按差值的10递减
16856661732.8
261732.854899.6
354899.648066.4
448066.441233.2
541233.234400
63440027566.8
727566.820733.6
820733.613900.4
913900.47067.2
107067.2234
要求统计出每个区间的记录数,一条sql可以实现吗?
[解决办法]
SELECT FLOOR((x-234) / 6833.2), COUNT(1) FROM t GROUP BY FLOOR((x-234) / 6833.2);
select level,68566-((level-1)*((68566-234)/10)) c1,68566-level*((68566-234)/10) c2 from dual connect by level <=10