Is it good to always use join clause in Oracle? [duplicate]

问题

我最近了解到,在 Oracle 中,我们可以做类似的事情

select t1.a, t2.b 
from table1 t1, table2 t2
where t1.x = t2.x

这相当于

select t1.a, t2.b
from table1 t1
join table2 t2 on (t1.x=t2.x)

是否有任何性能差异,或者是否有任何其他论点我们应该使用一种风格而不是另一种风格?

回答1

一般来说,它们是相等的,但是按照 Oracle 的建议,应该首选较低的一个 - 也称为“ANSI 连接语法”,并且出于许多其他原因,请参阅 OUTER JOIN 文档。

只有一个例外(我知道):当您使用FAST REFRESH创建MATERIALIZED VIEW时,您必须使用旧的 Oracle 连接语法,否则 FAST REFRESH 是不可能的。

很久以前,我为此在 Oracle 创建了一个 SR。 Oracle 并不认为这是一个错误,而是“缺乏文档”。 据我所知,这个限制/错误仍未解决。

标签

更多相关内容:请点击查看