--表空间 select a.name, a.Gbytes as total, (a.Gbytes - nvl(b.Gbytes, 0)) as usage, nvl(b.Gbytes, 0) as free, round((((a.Gbytes - nvl(b.Gbytes, 0)) / a.Gbytes) * 100), 2) || '%' as usagep from (select tablespace_name as name, round(sum(bytes) / 1024 / 1024 / 1024, 3) as Gbytes from dba_data_files group by tablespace_name) a, (select tablespace_name as name, round(sum(bytes) / 1024 / 1024 / 1024, 3) as Gbytes from dba_free_space group by tablespace_name) b where a.name = b.name(+);--临时表空间 select a.name, a.Gbytes as total, (a.Gbytes - nvl(b.Gbytes, 0)) as usage, nvl(b.Gbytes, 0) as free, round((((a.Gbytes - nvl(b.Gbytes, 0)) / a.Gbytes) * 100), 2) || '%' as usagep from (select tablespace_name as name, round(sum(bytes) / 1024 / 1024 / 1024, 3) as Gbytes from dba_temp_files group by tablespace_name) a, (select tablespace_name as name, round(sum(free_space) / 1024 / 1024 / 1024, 3) as Gbytes from dba_temp_free_space group by tablespace_name) b where a.name = b.name(+);
临时表直接看还真不知道,一般都是用语句。select * from user_Tables where temporary='Y'
select a.name,
a.Gbytes as total,
(a.Gbytes - nvl(b.Gbytes, 0)) as usage,
nvl(b.Gbytes, 0) as free,
round((((a.Gbytes - nvl(b.Gbytes, 0)) / a.Gbytes) * 100), 2) || '%' as usagep
from (select tablespace_name as name, round(sum(bytes) / 1024 / 1024 / 1024, 3) as Gbytes
from dba_data_files
group by tablespace_name) a,
(select tablespace_name as name, round(sum(bytes) / 1024 / 1024 / 1024, 3) as Gbytes
from dba_free_space
group by tablespace_name) b
where a.name = b.name(+);--临时表空间
select a.name,
a.Gbytes as total,
(a.Gbytes - nvl(b.Gbytes, 0)) as usage,
nvl(b.Gbytes, 0) as free,
round((((a.Gbytes - nvl(b.Gbytes, 0)) / a.Gbytes) * 100), 2) || '%' as usagep
from (select tablespace_name as name, round(sum(bytes) / 1024 / 1024 / 1024, 3) as Gbytes
from dba_temp_files
group by tablespace_name) a,
(select tablespace_name as name, round(sum(free_space) / 1024 / 1024 / 1024, 3) as Gbytes
from dba_temp_free_space
group by tablespace_name) b
where a.name = b.name(+);
临时表一般是在运行时生成的,语句执行完成就释放。所以一般是看不到的