select sum(d.bytes)/1024/1024 ,d.tablespace_name,t.user_bytes/1024/1024 user_mb,t.user_bytes/sum(d.bytes) from dba_data_files d,(select tablespace_name,user_bytes from dba_data_files) t where t.tablespace_name=d.tablespace_name group by d.tablespace_name;
*
ERROR at line 1:
ORA-00979: not a GROUP BY expression
select a.tablespace_name,a.all_m,b.use_m,round(b.use_m/a.all_m,3)*100||'%' rate
from (select tablespace_name,sum(bytes/1024/1024) all_m
from dba_data_files group by tablespace_name) a,
(select tablespace_name,sum(bytes/1024/1024) use_m
from dba_free_space group by tablespace_name) b
where a.tablespace_name=b.tablespace_name;