[Oracle] Filter 오퍼레이션
2024. 7. 30. 14:42ㆍ프로그래밍/ORACLE & SQL
실행계획을 보면 Filter 연산이 발생하는 경우가 있다.
이는 반복수행하는 작업에서 발생하며 대표적으로 In, Exsists에 서브쿼리를 썼을 때 발생한다고 공부하였다.
하지만, 단순 조건절을 이용한 데이터 추출을 할 때도 Filter 오퍼레이션이 발생하였다.
혼란을 겪고 정리하는 Filter 오퍼레이션에 대한 설명.
* FILTER 연산자가 사용되는 상황
1. 조건문이 있는 쿼리
: WHERE 절이나 HAVING 절에서 조건을 지정한 경우, Oracle은 이 조건을 적용하여 데이터를 필터링합니다.
2. 서브쿼리
: 서브쿼리에서 조건을 ㅈ거용하여 필터링하는 경우에도 필터 연산자가 사용됩니다.
3. 조인
: 여러 테이블 간의 조인 시 조건을 만족하는 행만을 선택할 때도 필터 연산자가 사용됩니다.
* FILTER 연산자
: 실행계획을 분석할 때, 실행 계획에서 필터 연산자가 나타나면, 그 연산자는 특정조건을 만족하는 데이터만을 선택하기 위해 사용된 것.
* 인덱스에서 선두 컬럼이 BETWEEN 등 범위로 지정되어
후위 컬럼이 필터 조건이 되면, FILTER 연산자가 발생한다.
'프로그래밍 > ORACLE & SQL' 카테고리의 다른 글
[ORACLE] 파티션 테이블 조회 (0) | 2024.06.21 |
---|---|
[ORACLE] GROUP BY 1 (0) | 2024.05.03 |
[SQL] 쿼리문 실행순서 (0) | 2023.03.27 |
[ORACLE] 문자열 반복 (0) | 2023.03.10 |