In SQL, what's the difference between JOIN and CROSS JOIN?
之间有什么区别:
和:
我可以互换使用吗?
SQL具有以下类型的联接,所有这些联接均直接来自集合论:
-
内部联接。
等于A
From A inner join B
MySQL在
JOIN 和CROSS JOIN 之间没有区别。它们是相同的。在两个示例中,子句
1WHERE t1.a3 = t2.a1将任何类型的联接转换为内部联接。表达此查询的标准方式是
没有什么区别,尽管可以对此有所微笑。首先进行交叉联接,然后使用where子句将其转换为内部联接(至少使用第一个联接)。这种编写联接的方式已有20多年的历史了,并且在复杂的语句中容易出错。我建议使用这种新的时髦方式编写它: