With 문의 함정
With 문을 사용하는 모드는 두 가지가 존재한다. 하나는 materialize, 또하나는 inline 모드로 사용한다. With 이름 AS (SELECT /*+ inline */ ... ) With 이름 AS (SELECT /*+ materialize */ ... ) 1. materialize는 실체뷰처럼 사용하기 때문에 임시테이블을 create하고 drop하는 과정을 동반한다. 그러므로 OLTP 환경에서 특히나 자주 사용자가 사용하는 쿼리라면 사용하지 않기를 바란다. 사용자가 클릭하면 클라이언트는 DB한테 DDL문을 보내는 것과 같다. 사용자가 많고 빈번하면 임시테이블을 생성하고 DROP하는데 시간이 지체될 수 있기 때문이다. 2. inline 은 assembliy 개발시 공통적인 코드를 따로 분리하..
2010.12.20