SELECT
A.COL2
FROM TEST A, TEST2 B
WHERE A.COL1 = B.COL1(+)
AND B.COL2 = '1'
이런식의 쿼리가 가능한건가요? 아우터를 건 테이블에대해서.. 다른조건을 걸때.. 저렇게..B.COL2='1' 이렇게 해도 정확한 값이 나오는건가요?
소스를 보니까 이런식으로 한게 있는데.. 제가 알기론.. 아우터 테이블은 조건식에 계속 (+) 를 갖고가야하는걸로 아는데..
아우터테이블 상수값 조건에 (+) 해야 아우터 조인됩니다.
하나라도 하지 않으면 이너조인됩니다.
따라서 아래와 같은 결과가 나옵니다.
WHERE A.COL1 = B.COL1
b 테이블의 조건을 위로 올려서 처리하시면 어떨까요?
select a.col2
from test1 a
, (select * From test2 where col2 = '1') b
where a.col1 = b.col1(+)