我正在尝试在某些条件下从 2 个表中检索数据。当我只使用条件进行内部连接时,我得到了一个巨大的价值(200000 个数据)。但是当我分组时,我得到的值非常少,比如(8000 个数据)。
SELECT Tcg.SK_tID, Tcg.SK_ServiceProviderID
INTO #CHDetails
FROM #ClientGroup Tcg
INNER JOIN dbo.Component AS chd ON chd.SK_PID = Tcg.SK_PID
AND chd.SK_ServiceProviderID = Tcg.SK_ServiceProviderID
AND chd.SK_CompID = @CHD
AND chd.ReportDate < @ReportDate
GROUP BY Tcg.SK_PID ,Tcg.SK_ServiceProviderID
你能告诉我造成这种情况的原因吗?内连接总是采用公共数据。#ClientGroup 表中的数据在 70000 左右,而 dbo.Component 中的数据非常庞大。当我在逻辑上查询公共 PID 和服务提供者时,它应该给我等于或小于#ClientGroup 的记录。它如何给予更多?
当我进行分组时,我得到 8000。但是为什么我要在 2 个表的内部连接中进行分组。