檢視Oracle資料庫的表空間
阿新 • • 發佈:2018-12-21
sql語句:
SELECT (UPPER(F.TABLESPACE_NAME)) TBS_NAME, (D.TOT_GROOTTE_MB) SIZE_GB, (D.TOT_GROOTTE_MB - F.TOTAL_BYTES) USED_GB,(TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100, 2), '990.99')) as PERF,(F.TOTAL_BYTES) FREE_GB FROM (SELECT TABLESPACE_NAME, ROUND(SUM(BYTES)/(1024*1024*1024), 2) TOTAL_BYTES, ROUND(MAX(BYTES) / (1024*1024*1024), 2) MAX_BYTES FROM SYS.DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) F, (SELECT DD.TABLESPACE_NAME, ROUND(SUM(DD.BYTES) / (1024*1024*1024), 2) TOT_GROOTTE_MB FROM SYS.DBA_DATA_FILES DD GROUP BY DD.TABLESPACE_NAME) D WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME ORDER BY (D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB DESC ;
直接執行這段sql就可查詢當前使用者下的表空間啦
查詢最後10條資料:
select f.* from (select name,age,job,rownum rn from emp order by rn desc) f where rownum<=10;