栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

MySQL JOIN的默认默认行为是INNER或OUTER?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

MySQL JOIN的默认默认行为是INNER或OUTER?

在MySQL中,写

JOIN
不合格的隐含含义
INNER JOIN
。换句话说,
INNER
in
INNERJOIN
是可选的。
INNER
而
CROSS
在MySQL的同义词。为了清楚起见,我写
JOIN
或者
INNERJOIN
如果我有一个连接条件,
CROSS JOIN
如果我没有条件。

文档中介绍了允许的联接语法。


现在,我认为独立的JOIN就是(使用)逗号和WHERe子句。


效果是一样的,但背后的历史却不同。逗号语法来自ANSI-89标准。但是,此语法存在许多问题,因此在ANSI-92标准中引入了JOIN关键字。

我强烈建议您 始终 使用JOIN语法而不是逗号。

  • T1 JOIN T2 ON ...
    比更具可读性
    T1, T2 WHERe ...
    。
  • 它更易于维护,因为表关系和过滤器已明确定义,而不是混合在一起。
  • 与逗号语法相比,JOIN语法更容易转换为OUTER JOIN。
  • 由于优先规则,在同一条语句中混合使用逗号和JOIN语法会产生奇怪的错误。
  • 由于忘记了连接子句,因此在使用JOIN语法时不太可能意外地创建笛卡尔乘积,因为连接子句写在连接的旁边,并且很容易看出是否缺少连接子。


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/369469.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号