SQL 연산(FILTER)
구로디지털 오엔제이프로그래밍실무교육센터
FILTER 연산은 데이터 추출 시 필터링이 일어나고 있음을 알려주는 SQL
ROW 연산인데 WHERE 조건 절에서 인덱스를 사용하지 못할 때 발생하는
것입니다. NESTED LOOP 방식으로 해석할 수 있습니다.
아래의
예는 EMP TABLE에서 부서의 최소 급여를 받는 사람들을 추출하는 것입니다.
SQL> SELECT ENAME, SAL, JOB
FROM EMPTEST A
WHERE SAL = (SELECT
MIN(SAL)
FROM EMPTEST
B
WHERE B.DEPTNO =
A.DEPTNO);
Execution Plan
---------------------------------------------------
0
SELECT STATEMENT
Optimizer=CHOOSE
1
0 FILTER
2
1 TABLE ACCESS
(FULL) OF ‘EMP’
3
2 SORT
(AGGREGATE)
4
3 TABLE ACCESS
(BY INDEX ROWID) OF ‘EMP’
5
4 INDEX (RANGE
SCAN) OF ‘idx_emp_deptno’
(NON-UNIQUE)
댓글 없음:
댓글 쓰기