2016-09-22 8 views
0

'ロールアップ'を使用していると、2行が「合計」と呼ばれる問題があります。下の '合計は'ロールアップを使用した後の行の名前付け

Name  Col1  Col2 
    Total  10  12 
    A   5  2 
    B   4  4 
    C   0  4  
    Total   1  2 

は、これは私が何か間違ったことをやっている私のクエリの一部であり、この

Name  Col1  Col2 
    Total  10  12 
    A   5  2 
    B   4  4 
    C   0  4  
    N/A   1  2 

のようになります。 'N/A' と呼ばれるべき

select 

    case Name when 'N/A' then 'Total' else Name end as Name  
    ,col1 
    ,col2 

    from 

    ( 

    case NameID when '1' then 'A' 
       when '2' then 'B' 
       when '3' then 'C' 
       else 'N/A' 
    end as Name 
    ,col1 --these are sums 
    ,col2 --these are sums 

    from table 
    group by NameID with rollup 

    )a 

このビットに変更を加えた場合

case NameID when '1' then 'A' 
       when '2' then 'B' 
       when '3' then 'C' 
       else 'help' 
    end as Name 

結果は、この

 Name  Col1  Col2 
     help  10  12 
     A   5  2 
     B   4  4 
     C   0  4  
     help  1  2 

あるすべてがはるかに高く評価助け、感謝

+0

あなたの例には「ロールアップ」がありませんので、質問を理解するのは難しいです。 –

答えて

0

あなたNAMEsの一つは、それが思わ合計で、なぜそれらを交換ません。あなたが望むものに見えます。

case 
    when NAME = 'N/A' then 'Total' 
    when NAME = 'Total' then 'N/A' 
    else Name 
end as Name 
関連する問題