Qua*_*Van 86 mysql select join
所以我在最后一小时一直在浏览互联网,阅读并寻找这个简单问题的最终答案.
MySQL中的默认JOIN是什么?
SELECT * FROM t1 JOIN t2
Run Code Online (Sandbox Code Playgroud)
这是一样的吗?
SELECT * FROM t1, t2
OR
SELECT * FROM t1 INNER JOIN t2
Run Code Online (Sandbox Code Playgroud)
还有一个相关的问题,当你使用"WHERE"子句时,它是否与JOIN或INNER JOIN相同?
现在我认为独立的JOIN与使用逗号和WHERE子句相同.
Mar*_*ers 116
在MySQL编写JOIN
不合格的含义INNER JOIN
.换句话说,INNER
输入INNER JOIN
是可选的.INNER
并且CROSS
是MySQL的同义词.为清楚起见,我写JOIN
或INNER JOIN
如果我有一个连接条件,CROSS JOIN
如果我没有条件.
文档中描述了允许的连接语法.
现在我认为一个独立的JOIN只不过是使用逗号和WHERE子句(相同).
效果是一样的,但它们背后的历史是不同的.逗号语法来自ANSI-89标准.但是这种语法存在许多问题,因此在ANSI-92标准中引入了JOIN关键字.
我强烈建议您始终使用JOIN语法而不是逗号.
T1 JOIN T2 ON ...
比...更具可读性T1, T2 WHERE ...
.