쿼리 실행 계획 보기

설명

CUBRID SQL 질의에 대한 실행 계획(쿼리 플랜)을 보기 위해서는 SET OPTIMIZATION 구문을 이용해서 최적화 수준(optimization level) 값을 변경시킨다. 현재의 최적화 수준 값은 GET OPTIMIZATION 구문으로 얻을 수 있다.

CUBRID 질의 최적화기는 사용자에 의해 설정된 최적화 수준 값을 참조하여 최적화 여부와 쿼리 실행 계획의 출력 여부를 결정한다. 쿼리 실행 계획은 표준 출력으로 표시되므로 CSQL 인터프리터와 같은 터미널 기반의 프로그램에서 사용하는 것을 가정하고 설명한다. CUBRID 매니저를 이용해서 쿼리 플랜을 보는 방법에 대해서는 “CUBRID 매니저 클라이언트 기능”에서 “쿼리 플랜 보기” 항목을 참고한다.

구문

SET OPTIMIZATION LEVEL opt-level [;]
GET OPTIMIZATION LEVEL [ { TO | INTO } variable ] [;]

예제

다음은 심권호 선수가 메달을 획득한 연도와 메달 종류를 구하는 예제를 이용해 쿼리 실행 계획 보기를 수행한 것이다.

GET OPTIMIZATION LEVEL;

=== <Result of GET OPTIMIZATION Command in Line 1> ===
       Result
=============
            1

SET OPTIMIZATION LEVEL 258;

SELECT a.name, b.host_year, b.medal
FROM athlete a, game b WHERE a.name = 'Sim Kwon Ho' AND a.code = b.athlete_code;
Query plan:
 Nested loops
    Sequential scan(game b)
    Index scan(athlete a, pk_athlete_code, a.code=b.athlete_code)

=== <Result of SELECT Command in Line 1> ===
There are no results.
0 rows selected.