文章转自:http://blog.csdn.net/tianlesoftware/article/details/7619732
1 /* Formatted on 2012/5/31 14:51:13 (QP5 v5.185.11230.41888) */ 2 SELECT D.TABLESPACE_NAME, 3 SPACE || 'M' "SUM_SPACE(M)", 4 BLOCKS "SUM_BLOCKS", 5 SPACE - NVL (FREE_SPACE, 0) || 'M' "USED_SPACE(M)", 6 ROUND ( (1 - NVL (FREE_SPACE, 0) / SPACE) * 100, 2) || '%' 7 "USED_RATE(%)", 8 FREE_SPACE || 'M' "FREE_SPACE(M)" 9 FROM ( SELECT TABLESPACE_NAME, 10 ROUND (SUM (BYTES) / (1024 * 1024), 2) SPACE, 11 SUM (BLOCKS) BLOCKS 12 FROM DBA_DATA_FILES 13 GROUP BY TABLESPACE_NAME) D, 14 ( SELECT TABLESPACE_NAME, 15 ROUND (SUM (BYTES) / (1024 * 1024), 2) FREE_SPACE 16 FROM DBA_FREE_SPACE 17 GROUP BY TABLESPACE_NAME) F 18 WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+) 19 UNION ALL --如果有临时表空间 20 SELECT D.TABLESPACE_NAME, 21 SPACE || 'M' "SUM_SPACE(M)", 22 BLOCKS SUM_BLOCKS, 23 USED_SPACE || 'M' "USED_SPACE(M)", 24 ROUND (NVL (USED_SPACE, 0) / SPACE * 100, 2) || '%' "USED_RATE(%)", 25 NVL (FREE_SPACE, 0) || 'M' "FREE_SPACE(M)" 26 FROM ( SELECT TABLESPACE_NAME, 27 ROUND (SUM (BYTES) / (1024 * 1024), 2) SPACE, 28 SUM (BLOCKS) BLOCKS 29 FROM DBA_TEMP_FILES 30 GROUP BY TABLESPACE_NAME) D, 31 ( SELECT TABLESPACE_NAME, 32 ROUND (SUM (BYTES_USED) / (1024 * 1024), 2) USED_SPACE, 33 ROUND (SUM (BYTES_FREE) / (1024 * 1024), 2) FREE_SPACE 34 FROM V$TEMP_SPACE_HEADER 35 GROUP BY TABLESPACE_NAME) F 36 WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+) 37 ORDER BY 1;
效果图笔者添加: