oracle 查询语句集合

整理了下这两天用到的oracle 查询语句,作为记录。


1,查询当前用户所有的表信息

select * from user_tables order by table_name;


2,查询表空间的使用情况

 

select   a.tablespace_name,a.bytes/1024/1024 "Sum MB",(a.bytes-b.bytes)/1024/1024   "used MB",b.bytes/1024/1024 "free MB",round(((a.bytes-b.bytes)/a.bytes)*100,2) "percent_used"  

from  

(select tablespace_name,sum(bytes) bytes from dba_data_files group by tablespace_name)   a,  

(select tablespace_name,sum(bytes) bytes,max(bytes) largest from dba_free_space group by tablespace_name)   b  

where   a.tablespace_name=b.tablespace_name  

order   by   ((a.bytes-b.bytes)/a.bytes)   desc  ;

 


3,查看用户表、索引、分区表占用空间

select segment_name, sum(bytes)/1024/1024 Mbytese from user_segments  group by segment_name;
    3.1、表占用空间
    
select segment_name, sum(bytes)/1024/1024 Mbytese from user_segments where segment_type='TABLE'  group by segment_name order by ( sum(bytes)/1024/1024) desc;
    3.2、索引占用空间

select segment_name ,sum(bytes)/1024/1024 from user_segments where segment_type ='INDEX' group by segment_name;
    3.3、分区表TABLE PARTITION占用空间

select segment_name,sum(bytes)/1024/1024 Mbytes  from user_segments where segment_type='TABLE PARTITION' group by segment_name; 


4,设置给指定的表空间增加数据文件

ALTER TABLESPACE tablespacename  add datafile 'F:\oracle\product\10.2.0\oradata\eas0304\EAS_D_EAS_STANDARD06.DBF' size 10G;

 


5,查询表空间的磁盘碎片

select tablespace_name,count(*) chunks ,max(bytes/1024/1024) max_chunk from dba_free_space group by tablespace_name;



 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值