Sql 请帮助我用Oracle中的符号(+)重写查询
请帮助我用Oracle的符号+重写查询,即没有联接会发生什么Sql 请帮助我用Oracle中的符号(+)重写查询,sql,oracle,join,Sql,Oracle,Join,请帮助我用Oracle的符号+重写查询,即没有联接会发生什么 select * from tbl1 left join ( tbl2 join tbl3 on tbl3.id = tbl2.a and tbl3.b = 50 ) on tbl1.id = tbl2.c 我想你想要: 以t23为例 挑选* 来自tbl2, tbl3 其中tbl3.id=tbl2.a
select *
from tbl1
left join (
tbl2 join tbl3
on tbl3.id = tbl2.a
and tbl3.b = 50
)
on tbl1.id = tbl2.c
我想你想要:
以t23为例
挑选*
来自tbl2,
tbl3
其中tbl3.id=tbl2.a
tbl3.b=50
挑选*
从tbl1,
t23
其中tbl1.id=t23.c+
或:
挑选*
从tbl1,
挑选*
来自tbl2,
tbl3
其中tbl3.id=tbl2.a
tbl3.b=50
t23
其中tbl1.id=t23.c+
但是,请坚持使用现代ANSI语法,不要使用30年前被取代的令人困惑的传统逗号连接。为什么要将现代ANSI语法转换为30年前被取代的传统专有语法?OLAX著名的最后一句话中仍然有隔离系统,除非。Oracle中有一些功能仍然需要旧的连接语法,最显著的是,提交时刷新的物化视图;在很多情况下,Oracle内部将ANSI语法转换为旧的Oracle语法(Oracle是如何实现ANSI语法的)是有缺陷的。使用ANSI语法的同一查询在查询实际上完全正常时抛出错误;在使用Oracle语法重写它之后,它确实工作得非常好。所以,我同意-坚持ANSI语法,除非。。。