使用JOIN与WHERE子句相比,是否有性能上的提升?

27 浏览
0 Comments

使用JOIN与WHERE子句相比,是否有性能上的提升?

这个问题已经有答案了:

内连接 vs Where

是否存在使用联接代替下列代码中的WHERE子句的性能差异(或任何其他原因):

实例1。

select *
from table_1, table_2
where table_1.id=table_2.id;

实例2。

select *
from table_1
    join table_2 on
    table_1.id = table_2.id;

admin 更改状态以发布 2023年5月25日
0
0 Comments

你可以参考:需要纠正的习惯:使用旧式JOIN(此链接适用于SQL Server,但大多数观点在Oracle中也是有效的)。现在不鼓励使用逗号分隔的JOIN。您应该使用第二种格式的JOIN,因为它更易读,而且现在也被高度推荐和广泛使用。就性能而言,两种语法没有任何区别。此外,JOIN的第一种格式(即逗号分隔)是1992年之前的标准SQL JOIN语法。

此外,在Oracle中,当您需要使用LEFT JOIN或RIGHT JOIN时,您必须使用旧的(+)使用方式,该方式用于标识正在进行外连接的表。因此,这很令人困惑,并使查询变得不太易读。因此,显式JOIN(您的情况下的版本2)使其更易于理解和更易读。

0