mysql显式和隐式效率,显式vs隐式SQL连接

显式vs隐式SQL连接

在显式vs隐式内连接中是否存在效率差异?例如:

SELECT * FROM

table a INNER JOIN table b

ON a.id = b.id;

SELECT a.*, b.*

FROM table a, table b

WHERE a.id = b.id;

dmanxiii asked 2019-01-30T02:34:34Z

11个解决方案

117 votes

就个人而言,我更喜欢连接语法,因为它更清楚表格是连接的以及它们如何连接。 尝试比较较大的SQL查询,从8个不同的表中进行选择,并在那里进行大量过滤。 通过使用连接语法,可以将表连接的部分分离到要过滤行的部分。

grom answered 2019-01-30T02:35:17Z

113 votes

性能方面,它们完全相同(至少在SQL Server中)。

PS:请注意,自SQL Server 2005以来,不推荐使用IMPLICIT OUTER JOIN语法。(仍支持问题中使用的IMPLICIT INNER JOIN语法)

“旧式”JOIN语法的弃用:只有部分事物

lomaxx answered 2019-01-30T02:34:55Z

42 votes

在MySQL 5.1.51上,两个查询都有相同的执行计划:

mysql> explain select * from table1 a inner join table2 b on a.pid = b.pid;

+----&

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值