查詢表空間使用情況

pwz1688發表於2018-12-17

SELECT a.tablespace_name,

       round(a.total_size, 1) "total(M)",

       round(a.max_size, 1) "max(M)",

       round(a.total_size) - round(nvl(b.free_size, 0), 1) "used(M)",

       round(nvl(b.free_size, 0), 1) "free(M)",

       round(nvl(b.free_size, 0) / total_size * 100, 1) "free rate(%)",

       round(nvl(a.max_size -

                 (round(a.total_size) - round(nvl(b.free_size, 0), 1)),

                 0) / max_size * 100,

             1) "free rate2(%)"

  FROM (SELECT tablespace_name,

               SUM(bytes) / 1024 / 1024 total_size,

               SUM(CASE

                     WHEN autoextensible = 'NO' THEN

                      bytes

                     ELSE

                      maxbytes

                   END) / 1024 / 1024 max_size

          FROM dba_data_files

         GROUP BY tablespace_name) a,

       (SELECT tablespace_name, SUM(bytes) / 1024 / 1024 free_size

          FROM dba_free_space

         GROUP BY tablespace_name) b

 WHERE a.tablespace_name = b.tablespace_name(+);


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21251711/viewspace-2285421/,如需轉載,請註明出處,否則將追究法律責任。

相關文章