我在
http://topic.csdn.net/u/20100415/08/aab7d3fc-21eb-4fd8-ba22-819366d2b01c.html?seed=1916314004&r=64680860
這裡提的問題解決了
現在 
就是有個困惑
如果數據是
name content number
a a1 1
a a2 2
a a3 3
b b1 1
b b2 2
b b3 3
想返回的結果是
a a1 1
a a2 2
a a3 3
小記 '' 6
b b1 1
b b2 2
b b3 3
小記 '' 6
合計 '' 12
又要麻煩大家了

解决方案 »

  1.   

    select name,content,number,1 as ordid,name as ordname
      from ttable
    union all
     select '小記','',sum(number),2,name
      from ttable
     group by name
    union all
     select '合記','',sum(number),3,'zz'
      from ttable
    order by ordname,ordid,content
      

  2.   

    With t As (
      select 'a' name,'a1' content, 1 numb From dual Union All
      select 'a' name,'a2' content, 2 numb From dual Union All
      select 'a' name,'a3' content, 3 numb From dual Union All
      select 'b' name,'b1' content, 1 numb From dual Union All
      select 'b' name,'b2' content, 2 numb From dual Union All
      select 'b' name,'b3' content, 3 numb From dual
    )
    SELECT decode(grouping_id(NAME, content), 3, '合计', 1, '小記', NAME) NAME, content, SUM(numb) numb
      FROM t
     GROUP BY ROLLUP(NAME, content);
      

  3.   

    不過現在還有一個問題  
    如果有若干個content  content1,content2... 
    比如說有 content1,content2,content3
    好像處理會很麻煩的
    name content numbera a1 1
    a a2 2
    a a3 3
    b b1 1
    b b2 2
    b b3 3
    如果我想要在查詢的結果上也有 content的字段 要如何處理