环比就是今年第
n
月与第
n-1
月或第
n+1
月比;同比就是今年第
n
月与去年第
n
月比。
建测试表,假设是个销售数量表:
create table t (dt date,cnt number);
随便插入些测试数据,最后表的内容如下:
DT CNT
---------- ----------
2012-02-09 15
2012-02-21 2
2012-03-23 1
2012-03-23 5
2012-04-23 2
2012-05-12 20
2012-07-01 20
2012-07-21 20
显示环比,如果某个月没有销售,就有点儿麻烦。
先想个办法,显示本年度的
1
至
12
月,有个很有技巧的技术来实现:
SQL> set pagesize 20
SQL> with m as (select '2012-'||lpad(rownum,2,'0') v from dual connect by level<=12)
select *
from m;
V
---------
2012-01
2012-02
2012-03
2012-04
2012-05
<