select sum(Amount),UserName from tbl_Finance Group By UserName以上SQL语句中 Amount  有正负(正为充值记录,负为消费记录)  现在只想取出为负的统计
不能用where Amount like '%-%' 因为这样的话  没有消费记录的  就会不显示了 
比如 UserName=huang 的只有充值记录  没消费记录  那么 他就不会被统计出来 。有啥解决办法 ?

解决方案 »

  1.   

    select sum(Amount),UserName from tbl_Finance where Amount<0 Group By UserName 
      

  2.   

    说了不能用 where  郁闷! 
      

  3.   

    select sum(Amount),UserName 
    from tbl_Finance 
    Group By UserName 
    HAVING SUM(Amount) < 0
      

  4.   

    要用where的,用外连接就行了select a.UserName,b.Amount from
      (select distinct UserName from tbl_Finance) as a
      left join
      (select sum(Amount) as Amount,UserName from tbl_Finance where Amount<0 Group By UserName) b
      on a.UserName =b.UserName 
    order by a.UserName
      

  5.   

    SELECT  Xiaofei = SUM(CASE WHEN Amount < 0 THEN Amount ELSE 0 END) , UserName FROM    tbl_Finance
    GROUP BY UserName
    解决啦 ,哈哈  多谢各位了