ejyoo's 개발 노트

OPTIMIZER 의 실행계획 확인하기 본문

DB/Oracle

OPTIMIZER 의 실행계획 확인하기

ejyoovV 2021. 3. 4. 08:55
EXPLAIN PLAN SET STATEMENT_ID = '임의지정1' FOR
SELECT EMP_ID, EMP_NAME FROM TEMP WHERE EMP_ID > 0;

SELECT LPAD(OPERATION, LENGTH(OPERATION) + 2 * (LEVEL-1))||
DECODE(ID,0,'COST ESTIMATE:'||DECODE(POSITION,'0',
'N/A',POSITION),NULL)||''||OPTIONS||
DECODE(OBJECT_NAME,NULL,NULL,':')||
RPAD(OBJECT_OWNER,LENGTH(OBJECT_NAME)+1,',')||OBJECT_NAME||
DECODE(OBJECT_TYPE,'UNIQUE',' (U) ', 'NIN_UNIQUE',
' (NU) ', NULL)||DECODE(OBJECT_INSTANCE,NULL,NULL,'('||OBJECT_INSTANCE||')')
PLAN FROM PLAN_TABLE
START WITH ID = 0 AND STATEMENT_ID='임의지정1'
CONNECT BY PRIOR ID = PARENT_ID AND STATEMENT_ID='임의지정1';

EXPLAIN PLAN SER STATEMENT_ID = '이름' FOR

SELECT 문

SELECT LPAD ~ START WITH ID = 0 AND STATEMENT_ID='이름' ~

하면 데이터 베이스의 처리 순서(계획)을 볼 수 있음.

'DB > Oracle' 카테고리의 다른 글

ERD  (0) 2021.04.15
ORACLE 한글 3바이트 → 2바이트로 변경  (0) 2021.03.04
OPTIMIZER 의 실행계획 확인하기  (0) 2021.03.04
JOIN 공부  (0) 2021.03.04
JOIN 공부  (0) 2021.03.04