【发布时间】:2014-10-30 04:39:35
【问题描述】:
我必须在以下 2 个查询中计算出正确的值:
Select Finances.CustomerID,
sum(Finances.Total)Total
from Finances
group by Finances.CustomerID
order by Finances.CustomerID
Select Invoices.CustomerID,
sum(Invoices.InvoiceValue)InvoiceValue
from Invoices
group by Invoices.CustomerID
order by Invoices.CustomerID
在财务表中,客户可以从多个订单中欠款,因此对于此示例,假设客户必须支付 £100+ £400 + £500,总计为 £1000。
客户随后收到第一张 100 英镑的发票,并支付了这笔费用。
所以第二个查询现在将显示 100 英镑......然后我想从这 2 个值中计算第三列,从等于 900 英镑的 1000 英镑中减去 100 英镑(剩下的支付金额)
这是我的表结构:
还有很多相关联的表,但是这是我使用 select 语句的数据所在:)
我将如何编写 sql 语句来完成这一切,还是不可能?理想情况下,我希望在 INSERT -> SELECT -> WHERE NOT EXISTS 语句中使用,或者在视图中填充。感谢您的帮助
样本数据:
【问题讨论】:
标签: sql sql-server sql-server-2012