Diese Art von JOIN ist nicht auf einen HASH JOIN optimierbar oder ein MERGE JOIN .
Es kann als Verkettung von zwei Ergebnismengen ausgedrückt werden:
SELECT *
FROM maintable m
JOIN othertable o
ON o.parentId = m.id
UNION
SELECT *
FROM maintable m
JOIN othertable o
ON o.id = m.parentId
, wobei jeder von ihnen ein Equijoin ist, jedoch SQL Server Der Optimierer von ist nicht intelligent genug, um es in der von Ihnen geschriebenen Abfrage zu sehen (obwohl sie logisch äquivalent sind).