광고 한 번씩 클릭해 주시면 글 쓰는데 큰 힘이 됩니다 (제발~)

IT/Databases

티베로 데이터베이스 쿼리 실행계획 확인 (explan plan for the Tibero database)

ThinkTheStory 2024. 1. 12. 14:41
728x90

티베로에서 쿼리 실행계획을 확인하려할때 몇몇가지 방법 중 하나를 소개~

(물론 티베로스튜디오쓰고 하면 1도 필요없다 ㅋㅋ)

오라클이랑 유사하지만 아주 미세하게 차이가 있다.

여튼 쿼리를 작성할때 

 

explain plan for

SELECT /* bradkimplanquery */

COUNT(*)  

FROM DUAL  

 

요딴식으로 쿼리를 찾을 수 있는 고유의 명(위 샘플에서는 bradkimplanquery )을 넣어주고

v$sql 에서 bradkimplanquery 찾아낸다.

320x100

select * from v$sql where sql_text like '%bradkimplanquery%';

 

찾아낸 데이터 중에 SQL_ID 를 가지고 쿼리를 실행해서 실행계획을 알아내면 된다.

 

SELECT 

    SUBSTRB(TO_CHAR(ID), 1, 3) || LPAD(' ', LEVEL * 2) || UPPER(OPERATION) || DECODE(OBJECT_NAME, NULL, NULL, ': '||OBJECT_NAME) || ' (Cost:' || COST ||
    ', %%CPU:' || DECODE(COST, 0, 0, TRUNC((COST - IO_COST) / COST * 100)) || ', Rows:' || CARDINALITY || ') ' ||  DECODE(PSTART, '', '', '(PS:' || PSTART || ', PE:' || PEND || ')') AS "Execution Plan"
  FROM (SELECT * FROM V$SQL_PLAN WHERE SQL_ID = '5kgtcxs7zn57k') /* 여기에 SQL_ID를 입력 */
START WITH DEPTH = 1
CONNECT BY PRIOR ID = PARENT_ID 

          AND PRIOR SQL_ID = SQL_ID
 ORDER SIBLINGS BY POSITION;

 

실행계획 결과가 나온다

 

끗!

 

 

 

320x100