各位大侠好,我在数据库中查询时这样写,报错,请大家给指点一下 错哪了
select 
(case when setTax_ID=1 then  sum(Cont_tax_sumMoney)
when setTax_ID=2 then  sum(Cont_tax_sumMoney) 
else 0 end )
from OA_Doc_Cont 

解决方案 »

  1.   

     select sum(Cont_tax_sumMoney) from OA_Doc_Cont where setTax_ID=1
    union all
    select sum(Cont_tax_sumMoney) from OA_Doc_Cont where setTax_ID=2
      

  2.   

    select 
    sum(case when setTax_ID=1 then Cont_tax_sumMoney
    when setTax_ID=2 then Cont_tax_sumMoney
    else 0 end )
    from OA_Doc_Cont sum放在外層
      

  3.   

     select  
    sum(case when setTax_ID=1 then Cont_tax_sumMoney else 0 end ) [1],
    sum(case when setTax_ID=2 then Cont_tax_sumMoney else 0 end ) [2]
    from OA_Doc_Cont
      

  4.   

    select  
    (case when setTax_ID=1 then sum(Cont_tax_sumMoney)
    when setTax_ID=2 then sum(Cont_tax_sumMoney)  
    else 0 end )
    from OA_Doc_Cont 
    group by setTax_ID
      

  5.   

    sum(case when a='1' then 1 else 0 end) as sumprice
      

  6.   

     group by  setTax_ID
      

  7.   


    select  
    (case when setTax_ID=1 then (select sum(Cont_tax_sumMoney) from OA_Doc_Cont)
    when setTax_ID=2 then (select sum(Cont_tax_sumMoney) from OA_Doc_Cont)
    else 0 end )
    from OA_Doc_Cont 
      

  8.   

     select  
    sum(case when setTax_ID=1 then Cont_tax_sumMoney else 0 end ) [1],
    sum(case when setTax_ID=2 then Cont_tax_sumMoney else 0 end ) [2]
    from OA_Doc_Cont 
    这个是正确的,也谢谢大家的帮助