[ORACLE] NO_PUSH_SUBQ 힌트 완벽 분석과 실전 활용 전략
Oracle SQL 옵티마이저는 서브쿼리를 가능한 한 조기에 평가(push down)하여 전체 쿼리 성능을 높이려 시도합니다. 하지만 모든 상황에서 조기 평가가 최선은 아닙니다. 조기에 평가된 서브쿼리가 불필요하게 많은 데이터셋을 생성하거나, 원래 의도한 로직과 다르게 작동하는 문제가 발생할 수 있습니다. 이런 경우 NO_PUSH_SUBQ 힌트를 사용하여 서브쿼리를 조인 이후에 평가하도록 유도할 수 있습니다.NO_PUSH_SUBQ 힌트란?NO_PUSH_SUBQ 힌트는 옵티마이저가 서브쿼리를 조인 전에 수행하지 않고, 조인 이후에 평가하도록 지시합니다. 이를 통해 서브쿼리의 실행 시점과 데이터 흐름을 더 정확히 제어할 수 있습니다. 이 힌트는 특히 복잡한 비즈니스 로직이 있는 쿼리나, 조건절 적용 시점이 ..
Oracle
2025. 7. 8. 18:00