인덱스 용량을 구하되, 해당 인덱스에 특정 컬럼이 포함된 인덱스만 추출하여 인덱스 용량을 계산함
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
;
'데이터베이스' 카테고리의 다른 글
[SQL]DBMS에 따른 테이블 확인 (0) | 2021.01.18 |
---|---|
[SQL] 문자열 합치기 (0) | 2021.01.15 |
[SQL] 정규식을 사용한 Select 조회 (0) | 2021.01.13 |
[SQL] 기본 SQL (0) | 2021.01.11 |
[SQL] 매주 특정 요일의 날짜를 SQL로 계산하기 (0) | 2020.12.23 |