select a.money-b.money as diff from a left outer join b on a.id=b.id不好意思,sql写错了

解决方案 »

  1.   

    用isnull判断
    select 
    isnull(a.money,0)-isnull(b.money,0) as diff 
    from a 
    left outer join b on a.id=b.id
      

  2.   

    或者这样,但不如2楼的好
    select
    case when  b.money is null then
    a.money
    else
    a.money-b.money
    end diff 
    from a 
    left outer join b on a.id=b.id
      

  3.   

    select a.money - isnull(b.money,0) as diff 
    from a left join b on a.id=b.id
      

  4.   


    select  a.money-b.money as diff from a ,b where  a.id*=b.id and a.money-b.money*=a.money
      

  5.   


    select  a.money-b.money as diff from a ,b where  a.id*=b.id and a.money-b.money*=a.money