【发布时间】:2016-08-25 07:40:02
【问题描述】:
当我查询 sql 服务器以从不同的三个表中检索记录时遇到问题,它对 SUM([Bills.Extrabill_dollar]) 和 SUM([Receipts.Amount]) 执行完全不正确的值,下面是我的查询,请帮助我。
select Customers.SNO, SUM(Bills.Extrabill_dollar) as [ExtraAmount],SUM(Receipts.Amount) as [Received]
from
Customers left join Bills on Customers.SNO=Bills.CustomerSNO
left join Receipts on Customers.SNO=Receipts.CSNO
group by Customers.SNO
但如果我使用下面两个单独的查询返回 SUM(Extra_dollar) 和 SUM(Extra_dollar)SELECT Bills.CustomerSNO as [CustomerSNO],
SUM(Bills.Extrabill_dollar) AS [TotalExtraAmount] from Bills
group by Bills.CustomerSNO
SELECT Receipts.CSNO as [CustomerSNO],
SUM(Receipts.Amount) AS [TotalReveied] from Receipts
group by Receipts.CSNO 将返回正确的结果,如果使用 JOIN 组合这些表将不会返回,请帮助我亲爱的。
【问题讨论】:
-
我们必须猜测
totally incorrect values吗?请看How to create a Minimal, Complete, and Verifiable example
标签: sql-server database join