假设有一表ecv_saledetail其数据如下:
spbm xsrq zxssze
0101002200 2010-01-01 2.00000
0101002200 2010-01-01 2.00000
0101002200 2010-01-01 2.00000
0101002200 2010-01-09 2.00000
0101002200 2010-01-09 2.00000
0101002200 2010-01-09 2.00000
0101002200 2010-01-09 2.00000
0101002200 2010-01-09 2.00000
0101002200 2010-01-09 2.00000
0101002200 2010-01-09 4.00000
1、分组(按商品编码,销售日期)汇总无合计
select spbm,xsrq,sum(zxssze)
from ecv_saledetail where xsrq>='2010-01-01' and xsrq<='2010-01-10'
and spbm in ('0101002200','0101002300')
group by spbm,xsrq
结果如下:
spbm xsrq zxssze
0101002200 2010-01-01 10.00000
0101002300 2010-01-01 6.00000
0101002200 2010-01-02 2.00000
0101002300 2010-01-02 26.00000
0101002300 2010-01-03 8.00000
0101002200 2010-01-04 6.00000
0101002300 2010-01-04 8.00000
0101002300 2010-01-05 10.00000
0101002200 2010-01-06 4.00000
0101002300 2010-01-06 16.00000
0101002300 2010-01-07 4.00000
0101002200 2010-01-08 2.00000
0101002300 2010-01-08 16.00000
0101002200 2010-01-09 16.00000
0101002300 2010-01-09 8.00000
0101002200 2010-01-10 2.00000
0101002300 2010-01-10 2.00000
2、分组(按商品编码,销售日期)汇总及合计
select spbm,xsrq,sum(zxssze)
from ecv_saledetail where xsrq>='2010-01-01' and xsrq<='2010-01-10'
and spbm in ('0101002200','0101002300')
group by spbm,xsrq
with ROLLUP
结果如下:
0101002200 2010-01-01 10.00000
0101002200 2010-01-02 2.00000
0101002200 2010-01-04 6.00000
0101002200 2010-01-06 4.00000
0101002200 2010-01-08 2.00000
0101002200 2010-01-09 16.00000
0101002200 2010-01-10 2.00000
0101002200 NULL 42.00000 --小组合计
0101002300 2010-01-01 6.00000
0101002300 2010-01-02 26.00000
0101002300 2010-01-03 8.00000
0101002300 2010-01-04 8.00000
0101002300 2010-01-05 10.00000
0101002300 2010-01-06 16.00000
0101002300 2010-01-07 4.00000
0101002300 2010-01-08 16.00000
0101002300 2010-01-09 8.00000
0101002300 2010-01-10 2.00000
0101002300 NULL 104.00000 --小组合计
NULL NULL 146.00000 --总计
3、分别按商品编码,销售日期小组汇总,合计汇总
select spbm,xsrq,sum(zxssze)
from ecv_saledetail where xsrq>='2010-01-01' and xsrq<='2010-01-10'
and spbm in ('0101002200','0101002300')
group by spbm,xsrq
with cube
结果如下:
0101002200 2010-01-01 10.00000
0101002200 2010-01-02 2.00000
0101002200 2010-01-04 6.00000
0101002200 2010-01-06 4.00000
0101002200 2010-01-08 2.00000
0101002200 2010-01-09 16.00000
0101002200 2010-01-10 2.00000
0101002200 NULL 42.00000 --按商品编码小组汇总
0101002300 2010-01-01 6.00000
0101002300 2010-01-02 26.00000
0101002300 2010-01-03 8.00000
0101002300 2010-01-04 8.00000
0101002300 2010-01-05 10.00000
0101002300 2010-01-06 16.00000
0101002300 2010-01-07 4.00000
0101002300 2010-01-08 16.00000
0101002300 2010-01-09 8.00000
0101002300 2010-01-10 2.00000
0101002300 NULL 104.00000 --按商品编码小组汇总
NULL NULL 146.00000 --组合计
NULL 2010-01-01 16.00000 --按销售日期小组汇总
NULL 2010-01-02 28.00000 --按销售日期小组汇总
NULL 2010-01-03 8.00000
NULL 2010-01-04 14.00000
NULL 2010-01-05 10.00000
NULL 2010-01-06 20.00000
NULL 2010-01-07 4.00000
NULL 2010-01-08 18.00000
NULL 2010-01-09 24.00000
NULL 2010-01-10 4.00000
603

被折叠的 条评论
为什么被折叠?



