SELECT A.TABLESPACE_NAME,
A.BYTES / 1024 / 1024/1024 "Sum GB",
(A.BYTES - B.BYTES) / 1024 / 1024/1024 "used GB",
B.BYTES / 1024 / 1024/1024 "free GB",
round(((a.bytes - b.bytes) / a.bytes) * 100, 2) "percent_used"
FROM (SELECT TABLESPACE_NAME, SUM(BYTES) BYTES
FROM DBA_DATA_FILES
GROUP BY TABLESPACE_NAME) A,
(SELECT TABLESPACE_NAME, SUM(BYTES) BYTES, MAX(BYTES) LARGEST
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME) B
WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME
ORDER BY ((A.BYTES - B.BYTES) / A.BYTES) DESC;
A.BYTES / 1024 / 1024/1024 "Sum GB",
(A.BYTES - B.BYTES) / 1024 / 1024/1024 "used GB",
B.BYTES / 1024 / 1024/1024 "free GB",
round(((a.bytes - b.bytes) / a.bytes) * 100, 2) "percent_used"
FROM (SELECT TABLESPACE_NAME, SUM(BYTES) BYTES
FROM DBA_DATA_FILES
GROUP BY TABLESPACE_NAME) A,
(SELECT TABLESPACE_NAME, SUM(BYTES) BYTES, MAX(BYTES) LARGEST
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME) B
WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME
ORDER BY ((A.BYTES - B.BYTES) / A.BYTES) DESC;