Access Predicate와 Filter Predicate - 오라클 성능 고도화 원리와 해법2 p.168~p.170
개발 및 관리/Oracle 9i, 10g, 11g, 12c, 19c 2012. 11. 8. 09:59반응형
(9) Access Predicate와 Filter Predicate
- 10gR2부터 Autotrace 명령을 통해서 Predicate 정보를 출력해 볼 수 있다.
- 10gR2 이전 버전에서는 explain plan 명령을 통해 실행계획을 수집하고서 dbms_xplan 패키지(?
@/rdbms/admin/utlxpls.sql 참조)를 통해 실행계획을 출력해 볼 수 있다. 이는 오라클 9i부터 plan_table에
추가된 access_predicate와 filter_predicate 컬럼으로부터 가져온 값이다.
create index emp_x01 on emp(deptno, job, sal, ename, mgr, comm);
set autotrace traceonly explain
select /*+ ordered use_nl(e) index(e emp_x01) */ *
from dept d, emp e
where d.loc = 'CHICAGO'
and e.deptno = d.deptno
and e.job like 'SALE%'
and e.job between 'A' and 'Z'
and e.sal >= 1000
and e.ename like '%A%'
and trim(e.ename) = 'ALLEN'
and e.comm >= 300
and to_char(e.hiredate, 'yyyymmdd') like '198102%'
;
반응형
'개발 및 관리 > Oracle 9i, 10g, 11g, 12c, 19c' 카테고리의 다른 글
Oracle Database 10g SQL Fundamentals I - Practice 5 (0) | 2012.11.08 |
---|---|
오라클 함수, SQL Functions (0) | 2012.11.08 |
NULL 사용법 (0) | 2012.11.07 |
(Oracle Database Server) 중앙정보처리학원 - 2012년 11월 06일 화요일 2/2 (0) | 2012.11.06 |
(Oracle Database Server) 중앙정보처리학원 - 2012년 11월 06일 화요일 1/2 (0) | 2012.11.06 |