Tibero Index 여부 확인
티베로를 사용하다보면 인덱스를 타는지 및 실행 결과를 확인해보고 싶을 때가 있다.
문서를 찾아보면 뜨더라!
1)
explain plan for
SELECT HS.ALARM_ID /* 218C239D*/ << 고유한 값
FROM HISTORY_SENDER AS HS
ORDER BY HS.ALARM_ID ASC
2)
select * from v$sql where sql_text like '% 218C239D %'; << 아까 고유한 값
-> 실행결과로 나온 SQL_ID ( 아마 2개 나올거임 ) 중에 자신이 실행한 쿼리의 SQL_ID 저장
3)
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 = ' SQL_ID 여기') /* 여기에 SQL_ID를 입력 */
START WITH DEPTH = 1
CONNECT BY PRIOR ID = PARENT_ID
AND PRIOR SQL_ID = SQL_ID
ORDER SIBLINGS BY POSITION;