Pet*_*zov 22 sql oracle oracle11g
我有一个包含70多个表的Oracle模式.我想创建一个简单的页面,可以显示表占用的硬盘空间.我如何用SQL查询获取此值?
PS以及我如何获得Oracle架构版本?
Jus*_*ave 45
你可能想要
SELECT sum(bytes)
FROM dba_segments
WHERE owner = <<owner of schema>>
Run Code Online (Sandbox Code Playgroud)
如果您以架构所有者身份登录,则还可以
SELECT SUM(bytes)
FROM user_segments
Run Code Online (Sandbox Code Playgroud)
这将为您提供在用户所拥有的任何表空间中分配给用户所拥有的对象的空间.可能会有空的空间分配给这些查询所分配的表.
如果您只想计算没有表空间可用空间和索引的模式大小:
select
sum(bytes)/1024/1024 as size_in_mega,
segment_type
from
dba_segments
where
owner='<schema's owner>'
group by
segment_type;
Run Code Online (Sandbox Code Playgroud)
对于所有模式
select
sum(bytes)/1024/1024 as size_in_mega, owner
from
dba_segments
group by
owner;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
175021 次 |
| 最近记录: |