10
我有一個像下面這樣的查詢,它返回我期望的正確的行數。 (它以匹配返回相同的數據集,但與其他相關表不同的關聯信息的類似查詢。將INNER JOIN添加到查詢不應增加正確返回的行數?
SELECT *
FROM LK
INNER JOIN STC ON LK.V = STC.VI
LEFT OUTER JOIN BC ON LK.BC = BC.ID
LEFT OUTER JOIN K AS LT ON ISNULL(BC.ZA, LK.VH) = LT.KNN
WHERE
LT.KI IS NOT NULL AND LT.KS = 0
OR
LT.KI IS NULL
ORDER BY
LK.Z
但只要我添加其他內部連接我真正得到更多的行了。我想到了一個內部聯接只有當信息的連接兩側發現返回行,所以我希望得到相同或更少的行回來,但我得到解決的兩倍多
例如:。
SELECT *
FROM LK
INNER JOIN STC ON LK.V = STC.VI
INNER JOIN VK ON LK.V = VK.ID
INNER JOIN K AS A ON VK.AIN = A.KNN
LEFT OUTER JOIN BC ON LK.BC = BC.ID
LEFT OUTER JOIN K AS LT ON ISNULL(BC.ZA, LK.VH) = LT.KNN
WHERE
LT.KI IS NOT NULL AND LT.KS = 0
OR
LT.KI IS NULL
ORDER BY
LK.Z
這是否有意義?如何添加兩個內連接r在更多的行被返回?
更多關於我的實際問題,我如何調整第二個查詢,以便它返回與第一個查詢相同的行,但與連接表中的額外列?
+1。有點短但可能是準確的。 – 2010-08-18 08:58:39
當然..這是有道理的..猜猜這是森林和樹木之一。 – Kurt 2010-08-18 10:54:38
VK和LK代表什麼?我只知道外鍵和主鍵。 – systemovich 2011-05-26 13:14:39