2014-09-02 224 views
0

我需要在三个表上使用左外连接。示例我有三个名为A,B和C的表。我想要的结果类似于 左外连接(B左外连接c)。 做什么是最好的方法。三个表上的左外连接

我写过类似这样的东西。

select * from A,B,C where A.column_a=B.column_a(+) and B.column_b=C.column_b(+); 
+3

为什么不使用'左外join'语法而不是特定于Oracle的(+),因为你似乎知道如何表达它? – 2014-09-02 12:44:14

回答

1

取决于表是如何相关的(这是不是从你的问题完全清楚),

select * 
from A 
    left join B on b.column_a = a.column_a 
    left join C on c.column_b = b.column_b 

,或者

select * 
from A 
    left join (B left join C on c.column_b = b.column_b) 
     on b.column_a = a.column_a