表領域サイズを確認する

Pocket

【概要】
DBA_DATA_FILESおよびDBA_FREE_SPACEにより、表領域サイズを確認する。
【SQL文】
/*
|| ■表領域サイズを確認する
||
|| 【項目の説明】
|| tablespace_name :表領域名
|| T_SIZE :
|| U_SIZE :
|| F_SIZE :
|| U_RATE :
*/
set lines 120
set pages 100
set term off

ttitle off
clear col

col tablespace_name for a30
col T_SIZE for 999,999
col U_SIZE for 999,999
col F_SIZE for 999,999
col U_RATE for 999

ttitleleft ‘■■■ 表領域サイズ情報 ■■■’
spool tbs_size_info.lis

SELECT tablespace_name
, to_char(nvl(total_bytes/1024/1024,0),’999,999,999′)
, to_char(nvl((total_bytes – free_total_bytes)/1024/1024,0),’999,999,999′) U_SIZE
, to_char(nvl(free_total_bytes/1024/1024,0),’999,999,999′)
, round(nvl((total_bytes – free_total_bytes)/total_bytes * 100,100),2)
FROM (SELECT tablespace_name
, sum(bytes) total_bytes
FROM dba_data_files
GROUP BY tablespace_name)
, (SELECT tablespace_name free_tablespace_name
, sum(bytes) free_total_bytes
FROM dba_free_space
GROUP BY tablespace_name
ORDER BY 1)
WHERE tablespace_name = free_tablespace_name(+)
;
spool off
clear col
ttitle off
set line 80

以上です (^^♪