更改 ON 条件顺​​序会导致不同的查询结果?

Changing the ON condition order results in different query results?

如果我在最后一行中将顺序从这个更改为下一个,特别是当我使用左连接或左外部连接时,会有什么不同吗?有些人让我感到困惑,当我们改变顺序时它可能有不同的价值,我估计他们自己也不确定这一点。

或者,如果我们改变顺序,在右外连接、右连接、左连接、左外连接等什么情况下查询结果不同?

使用 = 时,将标准放在哪一边没有区别。

LEFT JOINRIGHT JOIN 的情况下,

Table 顺序很重要,但条件顺序不重要。

例如:

SELECT *
FROM Table1 a
LEFT JOIN Table2 b
 ON a.ID = b.ID

相当于:

SELECT *
FROM Table2 a
RIGHT JOIN Table1 b
 ON a.ID = b.ID

但不等同于:

SELECT *
FROM Table2 a
LEFT JOIN Table1 b
 ON a.ID = b.ID

演示:SQL Fiddle