데이터베이스
[SQL]Oracle 인덱스 용량 계산
프리랜서_코더
2021. 1. 14. 09:00
인덱스 용량을 구하되, 해당 인덱스에 특정 컬럼이 포함된 인덱스만 추출하여 인덱스 용량을 계산함
SELECT
B.TABLE_NAME
, A.SEGMENT_NAME
, ROUND(SUM(BYTES)/1024/1024) "SIZE_MB"
, A.SEGMENT_TYPE
FROM USER_SEGMENTS A, USER_INDEXES B
WHERE A.SEGMENT_NAME = B.INDEX_NAME
AND A.SEGMENT_TYPE IN ('INDEX','INDEX PARTITION')
AND B.TABLE_NAME IN ([테이블명])
AND B.INDEX_NAME IN (
SELECT INDEX_NAME
FROM USER_IND_COLUMNS
WHERE COLUMN_NAME = [컬럼명]
AND TABLE_NAME IN ([테이블명])
)
GROUP BY B.TABLE_NAME, A.SEGMENT_NAME, A.SEGMENT_TYPE
;