LEFT JOIN 条件中键的顺序

Sri*_*ram 4 mysql join left-join

当我们颠倒 LEFT JOIN 条件中键的顺序时会发生什么?

连接两个表的理想 SQL 左连接语法是

select fields 
from tableA 
LEFT JOIN tableB 
ON tableA.key = tableB.key
Run Code Online (Sandbox Code Playgroud)

连接条件的顺序翻转

select fields 
from tableA 
LEFT JOIN tableB 
ON tableB.key = tableA.key  -- (order flipped)
Run Code Online (Sandbox Code Playgroud)

这些查询会产生不同的结果集吗?

Dou*_*las 6

您将得到相同的结果。on 子句仅计算 true 或 false;顺序并不重要。

只有桌子本身的位置很重要。例如,如下颠倒表顺序会产生不同的结果。

select fields 
from tableB 
LEFT JOIN tableA
ON tableA.key = tableB.key
Run Code Online (Sandbox Code Playgroud)