SELECT * FROM a, b, c WHERE a.keycode = 'A' AND b.keydt(+) = a.keydt AND c.usernm(+) = b.usernm
흔히들 착각하는 내용인데요. 정상적으로 잘 사용하신것 맞습니다.
테이블과 테이블과의 관계는 한번에 a:b:c 로 동작하는게 아닙니다.
a:b 관계와 b:c 관계가 각각 따로 입니다.
b에 아우터 조인 하는건 a:b 와의 관계에서 하는 것이지
b:c 관계에서의 아우터 조인이 아니므로 b:c 조건에 b에 (+)가 붙으면 안되지요.
말씀하신 하나라도 (+) 가 붙지 않으면 Inner Join 이 되는 건 다음 경우에 해당하는 얘기지요.
AND b.keydt(+) = a.keydt
AND b.usernm = 'aaa' -- 여기에도 (+) 가 붙어야 한다는...