如果
select *
from A,B,C
where
A.ID = B.ID(+)
AND C.NUMBER = B.NUMBER(+)
是错误的,应该
select *
from A,C,B1,B2
where
A.ID=B1.ID(+)
AND C.NUMBER= B2.NUMBER(+)
AND(B1.UNIQUEID=B2.UNIQUEID or COALESCE(B1.UNIQUEID,B2.UNIQUEID) is null)
其中COALESCE函数返回列表中第一个不为null的项,如果都为null则返回null ,B1.UNIQUEID=B2.UNIQUEID 的UNIQUEID字段必须唯一