首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >计算模式中表的大小

计算模式中表的大小
EN

Stack Overflow用户
提问于 2016-02-26 00:15:17
回答 1查看 111关注 0票数 2

我正在尝试在我的模式中查找表的大小。我试着通过dba_extent查找,如下所示。

代码语言:javascript
复制
select segment_name,sum(bytes)/(1024*1024) size from  dba_extent where segment_type='TABLE'
and segment_name = 'mytablename'
and owner ='myschemaname'
group by segment_name;

它显示为2MB,但不可能是2MB,当我导出schema.It时,我在日志中看到它的大小约为800MB,当我查询dba_segments时,也给出了相同的结果。谁能帮我到哪里去wrong.thanks占用你的时间。

EN

回答 1

Stack Overflow用户

发布于 2016-02-26 00:59:03

尝试下面的SQL :希望这会有所帮助:)

代码语言:javascript
复制
SELECT 
tbl.NAME AS TableName,
idx.name as indexName,
prts.[Rows],
sum(a.total_pages) as TotalPages, 
sum(a.used_pages) as UsedPages, 
sum(a.data_pages) as DataPages,
(sum(a.total_pages) * 8) / 1024 as TotalSpaceMB, 
(sum(a.used_pages) * 8) / 1024 as UsedSpaceMB, 
(sum(a.data_pages) * 8) / 1024 as DataSpaceMB
FROM 
sys.tables tbl
INNER JOIN 
sys.indexes idx ON tbl.OBJECT_ID = idx.object_id
INNER JOIN 
sys.partitions prts ON idx.object_id = prts.OBJECT_ID AND idx.index_id = prts.index_id
INNER JOIN 
sys.allocation_units a ON prts.partition_id = a.container_id
WHERE 
tbl.NAME NOT LIKE 'dt%' AND
idx.OBJECT_ID > 255 AND 
idx.index_id <= 1
GROUP BY 
tbl.NAME, idx.object_id, idx.index_id, idx.name, prts.[Rows]
ORDER BY 
object_name(idx.object_id)
票数 -3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35632635

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档