数据库中 显示 小计 与 总计

select  rownum seq,
        decode(rn, 1, gid) gid,
        decode(rn, 1, gname) gname,
        gcolour,
        gwithin,
        gsize,
        gnumber
   from  ( select  t.*, row_number() over(partition  by  gid  order  by  gnumber) rn
           from  ( select  GId,
                        gname,
                        gcolour,
                        gwithin,
                        gsize,
                        sum (gnumber) gnumber
                   from  t_goods
                  group  by  GId, gname, gcolour, gwithin, gsize
                 union  all
                 select  gid, gname,  null null '小计' sum (gnumber)
                   from  t_goods
                  group  by  gid, gname
                 union  all
                 select  null null null null '总计' sum (gnumber)
                   from  t_goods) t);
 
  
        SEQ GID        GNAME                GCOLOUR       GWITHIN GSIZE         GNUMBER
---------- ---------- -------------------- ---------- ---------- ---------- --------
          1 A01        上衣                 红                  0 S                  10
          2                                 白                  0 M                  20
          3                                 黑                  0 L                  30
          4                                                       小计               60
          5 A02        下衣                 红                  0 S                   5
          6                                 白                  0 M                  15
          7                                                       小计               20
          8 A03        下衣                 红                  0 S                   5
          9                                 白                  0 M                  15
         10                                                       小计               20
         11                                                       总计              100
 
 
 
 
 
 
 
 
 
 
 
select t.*, row_number()OVER(PARTITION by ylmc order by gh ) rn
  from  (select gh , ylmc ,sum(syjc) ,sum(slyc) ,sum(smt) ,sum(syg) ,sum(gcls) ,sum(fmt) ,sum(fyp) ,sum(fyg) ,sum(gclf) ,sum(sysh) ,sum(fysh) ,sum(ccsh) ,sum(bygc) ,sum(byzc)
                   from zy_ylhz_two abc group by gh,ylmc
                 union ALL    
                    select '小计',ylmc,sum(syjc),sum(slyc),sum(smt),sum(syg),sum(gcls),sum(fmt),sum(fyp),sum(fyg),sum(gclf),sum(sysh),sum(fysh),sum(ccsh),sum(bygc),sum(byzc)
                    from zy_ylhz_two group by ylmc
                union ALL
                    select '总计','',sum(syjc),sum(slyc),sum(smt),sum(syg),sum(gcls),sum(fmt),sum(fyp),sum(fyg),sum(gclf),sum(sysh),sum(fysh),sum(ccsh),sum(bygc),sum(byzc)
                    from zy_ylhz_two )t

 

 
 
 
 
 
 
 
 
 
 
 

转载于:https://www.cnblogs.com/HeXiaoZhou/p/7903468.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值