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)
这些查询会产生不同的结果集吗?
您将得到相同的结果。on 子句仅计算 true 或 false;顺序并不重要。
只有桌子本身的位置很重要。例如,如下颠倒表顺序会产生不同的结果。
select fields
from tableB
LEFT JOIN tableA
ON tableA.key = tableB.key
Run Code Online (Sandbox Code Playgroud)