1. 질문 이해하기


select *
  from t1, t2, t3
 where t1.c1 = t2.c1(+)
   and t2.c2 = t3.c2
   and < other predicates >

  • 외부조인 불필요? (외부조건은 옵티마이져의 활동을 제한한다)



select *
  from t1, t2, t3
 where t1.c1 = t2.c1(+)
   and < other predicates >

  • 외부조인을 제거하기 위해서는 스키마를 이해하고 응답대상질문이 무엇인지를 파악하여야 함.



select *
  from t
 where x not in ( select x from t2 );

  • x 컬럼에 NULL 포함여부?
  • ( 쿼리에 not null을 추가할지, 테이블의 컬럼 속성값을 not null로 바꿔야 할지)