我有一个表总计列发票。然后我有一张表格(通常有多张付款到一张发票)。我需要列出余额,即Invoice.Total的差额 - (在该发票上进行的付款总额)。这就是我(呵呵雅Azure的使用SQL Server)的如何在子查询中使用主查询中的列?
select I.Invoice_Id,
I.Total - (select sum(Amount) from Payments P
where I.Invoice_Id = P.Invoice_Id) as Balance,
Q.Quote_Id,
Q.Description,
Q.Vendor_Num
from Invoice as I
inner join Payments as P on I.Invoice_Id = P.Invoice_Id
inner join Quote as Q on Q.Quote_Id = I.Quote_Id;
最终,这将是展示的发票已经欠平衡什么看法。如果我删除子查询中的位置,它会给我一个答案,但它是所有付款的总和。我只想要该发票上的付款总额。任何帮助,将不胜感激。
感谢
什么是你的问题?您的查询似乎没问题。 –
一般性技巧,不要在子查询中重复使用与主查询中相同的表别名。 – jarlh