求查找某一表空间中所有表、索引大小的SQL
5M求一个SQL:
查找某一表空间中,所有表、索引的名称、占用大小的SQL
收藏
复制链接
微信扫码分享
在小程序上查看
分享
4条回答
默认
最新
select owner,segment_name,segment_type,sum(bytes)/1024/1024 from dba_segments where tablespace_name=upper('&tbs_name') group by owner,segment_name,segment_type;
评论
有用 0感谢您的回复!
在dba_tables或者dba_indexes这两个视图中,有个sample_size参数,
sample_size是否能准确表示表或者索引的大小呢?
评论
有用 0采纳答案后不可修改和取消
col segment_name for a30
col type for a10
col size_MB for 999,999,999.99
compute sum of size_MB on owner
break on owner
select OWNER,regexp_substr(SEGMENT_type,'[^ ]+') type,SEGMENT_NAME,SUM(BYTES)/1024/1024 size_MB
from dba_segments
where tablespace_name='USERS' ---need modify
AND (SEGMENT_TYPE LIKE 'TABLE%' OR SEGMENT_TYPE LIKE 'INDEX%' )
AND segment_name not like 'BIN$%'
group by owner,regexp_substr(SEGMENT_type,'[^ ]+'),SEGMENT_NAME
order by 1,2 DESC;
评论
有用 0回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏

