[英]Left Outer Join Table Ordering
從我從LEFT OUTER JOIN中學到的所有知識中,您希望可為空的表應該位於equals符號的右側。 如果是這種情況,為什么兩個查詢都返回相同的結果:
SELECT *
FROM employees e
LEFT JOIN cars c ON c.employeeID=e.id AND c.name='Honda City'
WHERE c.id IS NULL
ORDER BY e.id ASC;
SELECT *
FROM employees e
LEFT JOIN cars c ON e.id=c.employeeID AND c.name='Honda City'
WHERE c.id IS NULL
ORDER BY e.id ASC;
Q1在A.id = B.id上使用A LEFT JOIN B
Q2使用A LEFT JOIN B ON B.id = A.id
您已經更改了ON子句中要比較的項目的LHS和RHS,但是LEFT連接正在談論左側的TABLE。
因此,要查看差異,您可以使Q2使用“ B LEFT JOIN A ON A.id = B.id”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.