自已统计加感觉太复杂了。

解决方案 »

  1.   

    NAME SNAME NUM
    A 甲 1
    B 乙 2
    C 丙 2
    B 甲 1
    A 丙 2
    C 丙 1NAME SNAME NUM
    A 丙 2
    A 甲 1
    A 小计 3
    B 乙 2
    B 甲 1
    B 小计 3
    C 丙 3
    C 小计 3
    合计 9select 
    CASE WHEN name IS NULL
            THEN '合计'
            ELSE name
        END name,
       CASE WHEN name IS NOT NULL AND sname IS NULL
            THEN '小计'
            WHEN name IS NULL AND sname IS NULL
            THEN NULL
            ELSE sname
        END sname,
        sum(num) num
    from tmp3
    GROUP BY ROLLUP(name, sname)