Sql 将结果之和加到方程式中

Sql 将结果之和加到方程式中,sql,sql-server,sql-server-2012,Sql,Sql Server,Sql Server 2012,我试着把ard.terms\u amount的结果相加,然后从我的“开放AR”计算中减去它。所以在这种情况下,它应该减去0.90 SELECT customer.customer_id ,customer.customer_name ,cast(sum(ih.total_amount - ih.amount_paid ) as decimal (10,2)) as [Open A/R] ,cast(dbo.p21_fn_days_sales_outstanding(customer.c

我试着把ard.terms\u amount的结果相加,然后从我的“开放AR”计算中减去它。所以在这种情况下,它应该减去0.90

SELECT 
customer.customer_id
,customer.customer_name


,cast(sum(ih.total_amount - ih.amount_paid ) as decimal (10,2)) as [Open A/R]


,cast(dbo.p21_fn_days_sales_outstanding(customer.company_id, customer.customer_id, 90, GETDATE()) as decimal (10,2)) average_dso 
,terms.terms_desc
,ard.terms_amount



FROM customer
INNER JOIN terms ON terms.terms_id = customer.terms_id
inner join invoice_hdr ih on ih.customer_id = customer.customer_id
inner join ar_receipts_detail ard on ard.customer_id = customer.customer_id
WHERE  customer.company_id = 'ABC' and customer.customer_id='123456'
and ih.approved ='y'


group by customer.customer_id,customer.customer_name,customer.company_id,terms.terms_desc,ard.terms_amount

那么你要做的是取“期限金额”列的总和,然后从“未结应收”列的总和中减去它,对吗

您可以将列的总和设置为两个变量,然后两者相减(请原谅我的语法,有一段时间我使用MSSQL,但最近我为了工作而切换到MySQL):


我认为语法是正确的,但我有一段时间没有使用MSSQL了。

您使用的是哪种DBMS?@a_horse_,没有名称sql2012@eggwhites是应该为每一行减去
0.9
,还是您正试图将它们组合成一行?@santi-i更新了图片。只有一行返回。
declare @terms_amount float; 
declare @OpenA/R float
set @terms_amount = (select sum(terms_amount) from yourdatabase);
set @OpenA/R = (select sum(OpenA/R) from yourdatabase);
select @terms - @OpenA/R;