首先,了解什么是:环比增长率?
环比增长率=(本期数-上期数)÷上期数×100%
如:2014年2月的工资为:5000,2014年1月的工资为4000,则2月份的环比增长率为:
(5000-4000) ÷ 4000 × 100% =25%
那么,oracle中的sql语句怎么写呢?
举个例子
1.建表
create table t ( dt date, cnt number )
2.插入数据
DT CNT
2012/1/1 10
2012/1/2 30
3.查询环比
select t.dt "日期", --环比 ( ------------分子--------------- ( t.cnt- (select t1.cnt from t t1 where to_char(t1.dt,'yyyy-mm-dd') = to_char(add_months(trunc(t.dt),-1),'yyyy-mm-dd') --上月数据 ) ) / ------------分母--------------- (select t1.cnt from t t1 where to_char(t1.dt,'yyyy-mm-dd') = to_char(add_months(trunc(t.dt),-1),'yyyy-mm-dd') ) )*100 || '%' as "环比增长率" from t t where to_char(t.dt,'yyyy-mm-dd')='2012-02-01'
结果:
日期 环比增长率
2012/1/2 200%