SELECT DECODE(GROUPING(dwdm), 1, '合计',
   dwdm) AS dwdm,
   DECODE(GROUPING(dwmc), 1, '', dwmc) AS dwmc,
   je
   FROM t_dw
   GROUP BY ROLLUP (dwdm, dwmc);仓促写成,试试,不行通知我。

解决方案 »

  1.   

    这样不行,因为是按两列(dwddm,dwmc)不同组合方式产生合计行,
    即合计行过多,而不是我想要的一行合计记录!!谢谢!!
      

  2.   

    ROLLUP恐怕做不到,为什么一定要用rollup呢?SELECT DECODE(GROUPING(dwdm), 1, '合计',
       dwdm) AS dwdm,
       DECODE(GROUPING(dwmc), 1, '', dwmc) AS dwmc,
       je
       FROM t_dw
    UNION
    SELECT '合计','',SUM(je)
    FROM t_dw
      

  3.   

    我目前就是使用
    enhydraboy(乱舞的浮尘)
    的方法设计的
    可是这对生成简单的合计行还可以
    要是合计操作的表是多层嵌套查询生成的就比较麻烦了难道ROLLUP真的实现不了吗?