SELECT ...
FROM dbo.viewFirst vf
INNER JOIN dbo.Table1 t1
ON vf.MVOID = t1.MVOID
AND vf.ValidFrom = t1.ValidFrom
LEFT OUTER JOIN dbo.Table2 t2
RIGHT OUTER JOIN dbo.Table3 t3
ON t2.OID = t3.FKOID
LEFT OUTER JOIN dbo.Table4 t4
ON t3.ZVOID = t4.OID
LEFT OUTER JOIN dbo.Table5 t5
INNER JOIN dbo.Table4 t6
ON t5.OID = t6.BCOID
ON t4.ZVOID = t5.OID
ON t2.AddressOID = t4.OID
この構文については、Inside SQL Server 2008 T-SQL Querying の第 7 章で説明されているか、この記事 Itzik Ben Gan と フォローアップ レター Lubor Kollar著
ON
を持つ t2.AddressOID = t4.OID
の節 たとえば最後は、JOIN
t2
の 論理的に最後に発生します。つまり、他の結合は論理的に 最初に処理され、次に LEFT JOIN
が処理されます それらの結合の結果に対して発生します。