---出
select cIn,SUM(IQ) as 出,cFr from RdRecords where [id] =10 group by cIn,cFr---入
select cIn,SUM(IQ) as 入,cFr from RdRecords where [id] =10 group by cIn,cFr现在我查询出来的是多条数据 但是我想要 出减去入的IQ值 应该怎么写?

解决方案 »

  1.   

    select cIn,sum(IQ)IQ,cFR from(
    select cIn,SUM(IQ),cFr from RdRecords where [id] =10 group by cIn,cFr 
    union all
    select cIn,-SUM(IQ),cFr from RdRecords where [id] =10 group by cIn,cFr )t --修改條件
     group by Cin,cfr
      

  2.   


    select r.cIn,r.出-isnull(t.入,0)
    from
    (
    select cIn,SUM(IQ) as 出,cFr from RdRecords where [id] =10 group by cIn,cFr) r
    left join

    select cIn,SUM(IQ) as 入,cFr from RdRecords where [id] =10 group by cIn,cFr) t
    on r.cin=t.cin?
      

  3.   

    或者
    select cIn,
           sum(case when [id]=10 then IQ else 0 end)-sum(case when [id]=100 then IQ else 0 end), 
           cFr 
    from RdRecords group by cIn,cFr
      

  4.   

    非常感谢~ 新手刚学SQL~嘿嘿~