--특정 사용자 테이블별 용량 확인#1
SELECT
owner, segment_name, segment_type, sum(bytes)/1024/1024 AS MB
FROM
DBA_SEGMENTS
WHERE
segment_type='TABLE'
AND owner = [사용자 아이디]
GROUP BY
owner, segment_name, segment_type
ORDER BY
mb desc;
--특정 사용자 테이블별 용량 확인#2
SELECT
A.segment_name, ROUND(SUM(A.bytes)/1024/1024) "SIZE_MB", A.segment_type
FROM
DBA_SEGMENTS A, DBA_TABLES B
WHERE
A.segment_name = B.TABLE_NAME
AND A.segment_type IN ('TABLE', 'TABLE_PARTITION')
AND A.owner = [사용자 아이디]
GROUP BY
A.segment_name, A.segment_type
ORDER BY
2 DESC;
--특정 사용자 테이블별 인덱스 용량
SELECT
A.segment_name, ROUND(SUM(A.bytes)/1024/1024) "SIZE_MB", A.segment_type
FROM
DBA_SEGMENTS A, DBA_INDEXES B
WHERE
A.segment_name = B.index_name
AND A.segment_type IN ('INDEX', 'INDEX PARTITION')
AND A.owner = [사용자 아이디]
GROUP BY
A.SEGMENT_NAME, A.SEGMENT_TYPE
ORDER BY
2 DESC;
--특정 사용자 테이블별 1행당 소요 용량
SELECT
table_name, SUM(data_length) AS byte
FROM
ALL_TAB_COLUMNS
WHERE
owner = [사용자 아이디]
GROUP BY
table_name
ORDER BY
byte DESC;