我有一个问题,我的查询结果是它的两倍。我的直接假设是,这是总结两次产生这个结果。我正在处理从标准表中选择的视图,并且我无法在其他任何地方再次找到它。我的下一个想法是,某个地方的连接必须创建重复项,它允许将相同的值相加两次并创建错误。SUM的结果是它应该是的两倍
它是一个大的看法,但我已经把范围缩小到一个区域
SELECT
F.[Person],
PP.[Team],
SUM(F.[Figure])
from (
SELECT Distinct Year([Date]) 'Year'
,Month([Date]) 'Month'
,convert(varchar(3),Datename(Month,[Date])) 'Mth'
,[Person]
from Figure F
Union all
Select Distinct
[Year]
,[Month]
,[Mth]
,[Person]
FROM Person P
)g
Left join [Person2] PP
on PP.Code = g.[Person]
GROUP BY
P.[Person],
PP.[Team]
我感觉好像也许它是与工会,但香港专业教育学院从未真正见过这样的事。任何人都可以帮助,为什么这可能会创造双重总和或我可以如何消除这个错误?
感谢
尝试union代替union all?只是为了避免dups? – MiloBellano
添加示例数据与预期的输出 –
可能是因为表persons2,如果任何重复上PP.Code那么它将导致错误的总和 – Rams