Да, вы можете использовать другие представления для получения информации об использовании пространства на уровне базы данных (исключая временное пространство) с помощью:
with used as
(select sum(bytes/1024/1024) as used_mb
from dba_segments),
total as
(select sum(bytes/1024/1024) as total_mb
from dba_data_files)
select
(select total_mb from total) as total_mb,
(select used_mb from used) as used_mb,
(select total_mb from total)- (select used_mb from used) as free_mb
from dual;
Пример:
SQL> with used as
2 (select sum(bytes/1024/1024) as used_mb
3 from dba_segments),
4 total as
5 (select sum(bytes/1024/1024) as total_mb
6 from dba_data_files)
7 select
8 (select total_mb from total) as total_mb,
9 (select used_mb from used) as used_mb,
10 (select total_mb from total)- (select used_mb from used) as free_mb
11 from dual;
TOTAL_MB USED_MB FREE_MB
---------- ---------- ----------
1570 980.25 589.75