以下是我的查询语句select convert(varchar(10),requestdate,120) as date,sum(price) as totalprice,
(select sum(price) from dbo.ChargeByOrigin where date=convert(varchar(10),requestdate,120)) as factprice
from dbo.ChargeMoney
where responsestatus=1
group by convert(varchar(10),requestdate,120)
我想在查询结果里面再添加一列,这一列是前两列的差,就是totalprice与factprice相减的结果
请问要怎么改呢??

解决方案 »

  1.   

    select *,totalprice-factprice
    from(
    select convert(varchar(10),requestdate,120) as date,sum(price) as totalprice,
    (select sum(price) from dbo.ChargeByOrigin where date=convert(varchar(10),requestdate,120)) as factprice
    from dbo.ChargeMoney
    where responsestatus=1
    group by convert(varchar(10),requestdate,120)
    )t
      

  2.   

     或select convert(varchar(10),requestdate,120) as date,sum(price) as totalprice,
    (select sum(price) from dbo.ChargeByOrigin where date=convert(varchar(10),requestdate,120)) as factprice,
    sum(price)-(select sum(price) from dbo.ChargeByOrigin where date=convert(varchar(10),requestdate,120)) 
    from dbo.ChargeMoney
    where responsestatus=1
    group by convert(varchar(10),requestdate,120)
      

  3.   

    select
     *,isnull(totalprice,0)-isnull(factprice,0)
    from
    (
    select convert(varchar(10),requestdate,120) as date,sum(price) as totalprice,
    (select sum(price) from dbo.ChargeByOrigin where date=convert(varchar(10),requestdate,120)) as factprice
    from dbo.ChargeMoney
    where responsestatus=1
    group by convert(varchar(10),requestdate,120)
    )t