Oracle左外连接使用旧语法

时间:2016-08-02 20:06:21

标签: sql oracle left-join

所以,我一直在尝试关注外连接:

SELECT * FROM table1
LEFT OUTER JOIN table2
ON table1.a = table2.a
AND table1.b = table2.b
LEFT OUTER JOIN table3
ON table1.a  =  table3.a
AND table1.b = table3.c

我已经测试过,可以毫无问题地进行测试。但是,我正在使用的软件使用旧语法进行左连接。所以我这样写了:

SELECT * FROM table1, table2, table3
WHERE table1.a = table2.a  (+)
AND table1.b   = table2.b (+)
AND table1.c = table3.a (+) 
AND table2.c =  table3.b (+)

显然,我得到了ORA-01417:一个表可能外部连接到最多一个其他表错误。有什么方法可以解决这个问题吗?

table1.c在任何table2列中都不存在,所以我不得不使用table1.c = table3.b子句。

0 个答案:

没有答案