SELECT
A.TABLESPACE_NAME “表空间名”,
TOTAL/ (1024 * 1024 * 1024) “表空间大小”,
FREE “表空间剩余大小”,
(TOTAL - FREE) “表空间使用大小”,
TOTAL / (1024 * 1024 * 1024) “表空间大小(G)”,
FREE / (1024 * 1024 * 1024) “表空间剩余大小(G)”,
(TOTAL - FREE) / (1024 * 1024 * 1024) “表空间使用大小(G)”,
ROUND((TOTAL - FREE) / TOTAL, 4) * 100 “使用率 %”
FROM (SELECT TABLESPACE_NAME,SUM(BYTES) FREE
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME
) A,
(SELECT TABLESPACE_NAME,SUM(BYTES) TOTAL
FROM DBA_DATA_FILES
GROUP BY TABLESPACE_NAME
) B
WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME;