【Oracle】Oracle查询表占用的空间(表大小)
在Oracle中,您可以使用以下SQL查询来获取表占用的空间大小:
SELECT
SEGMENT_NAME AS table_name,
ROUND(SUM(bytes) / 1024 / 1024, 2) AS size_in_mb
FROM
dba_segments
WHERE
SEGMENT_TYPE = 'TABLE'
AND OWNER = '您的用户名' -- 替换为实际的用户名
GROUP BY
SEGMENT_NAME;
确保您有访问dba_segments
视图的权限。如果没有,您可能需要联系数据库管理员。
这个查询会返回指定用户下所有表的大小,单位是MB。如果您想要获取整个数据库中所有表的大小,可以省略OWNER
条件。
请注意,这个查询只考虑了表本身占用的空间,并没有包括表的索引和其他相关对象的大小。如果需要包括这些对象的大小,您可能需要编写更复杂的查询或使用DBMS_SPACE
包中的过程来获取更详细的空间使用情况。
评论已关闭