oracle分区表-range分区

本文详细介绍了Oracle数据库中的分区表,特别是范围分区的使用场景、优点和操作示例,如创建、查询、删除、添加和调整分区。通过范围分区,可以提升查询性能,简化维护,并实现I/O均衡。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、什么时候用到分区表

             1.当表达到GB大小且继续增长

             2.需要将历史数据和当前的数据分开单独处理,比如历史数据仅仅需要只读,而当前数据则实现DML

 

二、分区的条件及特性

             共性:不同的分区之间必须有相同的逻辑属性,比如表名,列名,数据类型,约束等,

             个性:各个分区可以有不同的物理属性,比如pctfree, pctused, and tablespaces. 分区独立性:即使某些分区不可用,其他分区仍然可用。   

             特殊性:含有LONG、LONGRAW数据类型的表不能进行分区

 

三、分区的优点

             1、提高查询性能:只需要搜索特定分区,而非整张表,提高查询速度

             2、节约维护时间:单个分区的数据装载,索引重建,备份,维护等将远小于整张表的维护时间

             3、节约维护成本:可以单独备份和恢复每个分区

             4、均衡I/O:将不同的分区映射到不同的磁盘以平衡I/O,提高并发

 

四、ORACLE分区类型:

            范围分区、散列分区、列表分区、组合分区 

            Range分区:行映射到基于列值范围的分区 Range分区,又称为范围分区,基于分区键值的范围将数据映射到所建立的分区上。这是最通用的分区类型。 在按时间分区时,如果某些记录暂无法预测范围,可以创建maxvalue分区,所有不在指定范围内的记录都会被存储到maxvalue所在分区中。

 

--创建分区表

CREATE TABLE T_NEW (log_id, fun_code,log_time,povcd,req_typ,ip_addr)

         PARTITION BY RANGE (log_time) (

         PARTITION P1 VALUES LESS THAN (TO_DATE('2014-11-15', 'YYYY-MM-DD')),

         PARTITION P3 VALUES LESS THAN (TO_DATE('2014-11-30', 'YYYY-MM-DD')),

         PARTITION P4 VALUES LESS THAN (MAXVALUE)) AS

         SELECT log_id, fun_code,log_time,povcd,req_typ,ip_addr FROM APP_ACCESS_LOG;

 

--查询分区表

select * from T_NEW partition (p2) t where t.fun_code = '1111';

 

--删除其中一个分区

alter table T_NEW drop partition p4;

 

--添加一个分区

ALTER TABLE T_NEW add partition p5 values less than (TO_DATE('2015-01-30', 'YYYY-MM-DD'));

 

--split 将默认maxvalue分区分离成两个分区

alter table T_NEW split partition P4 at (TO_DATE(' 2015-01-31 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')) into (partition P4, partition PMAX);

 

--合并分区

alter table T_NEW merge partitions p1,p3 into partition p2;

 

--查询分区表分区情况

select table_name,partition_name from user_tab_partitions where table_name='T_NEW';

 

参考:http://blog.youkuaiyun.com/leshami/article/details/5925572

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值