SELECT tbs 表空间名,
sum(totalM) 总共大小M,
sum(usedM) 已使用空间M,
sum(remainedM) 剩余空间M,
sum(usedM)/sum(totalM)*100 已使用百分比,
sum(remainedM)/sum(totalM)*100 剩余百分比
FROM (
SELECT b.file_id ID,
b.Tablespace_name tbs,
b.file_name name,
b.bytes/1024/1024 totalM,
(b.bytes-sum(nvl(a.bytes,0)))/1024/1024 usedM,
sum(nvl(a.bytes,0))/1024/1024 remainedM,
sum(nvl(a.bytes,0))/(b.bytes)*100 剩余百分比 ,
(100 - (sum(nvl(a.bytes,0))/(b.bytes)*100)) 已使用百分比
FROM dba_free_space a,dba_data_files b
WHERE a.file_id=b.file_id
GROUP BY b.Tablespace_name,b.file_name,b.file_id,b.bytes
ORDER BY b.Tablespace_name
)
GROUP BY tbs;