select *
from (select
b.file_id file_id,
b.tablespace_name tablespace,
b.bytes/1024/1024||'M' bytesCount,
(b.bytes-sum(nvl(a.bytes,0)))/1024/1024||'M' used,
sum(nvl(a.bytes,0))/1024/1024||'M' left,
100 - sum(nvl(a.bytes,0))/(b.bytes)*100 percent
from dba_free_space a,dba_data_files b
where a.file_id=b.file_id
group by b.tablespace_name,b.file_id,b.bytes
from (select
b.file_id file_id,
b.tablespace_name tablespace,
b.bytes/1024/1024||'M' bytesCount,
(b.bytes-sum(nvl(a.bytes,0)))/1024/1024||'M' used,
sum(nvl(a.bytes,0))/1024/1024||'M' left,
100 - sum(nvl(a.bytes,0))/(b.bytes)*100 percent
from dba_free_space a,dba_data_files b
where a.file_id=b.file_id
group by b.tablespace_name,b.file_id,b.bytes
order by b.file_id) p;
上述sql最好以sysdba用户登录。