表A(userid,money,type)
根据类型不同,求每个用户金额,当type=1是加钱,2减少钱

解决方案 »

  1.   

    select userid,sum(case money when type=1 then money when type-2 then -money end) from A
    group by userid
      

  2.   

    select userid,sum(money*(case when [type]=2 then -1 else [type] end)) from tb
    group by userid
      

  3.   

    select 
       userid,
       sum(case type when 1 then money when 2 then -money else 0 end) as [money]
    from
       a
    group by
       userid
      

  4.   

    select sum([money]) from tb group by userid,type 
      

  5.   

    select userid,sum(case  when type=1 then money when type=2 then -money end) from A
    group by userid
      

  6.   

    select 
       userid,
       sum(case type when 1 then money when 2 then -money else 0 end) as [money]
    from
       a
    group by
       userid