包含oracle如何建分取的词条

oracle如何创建组合分区

oracle组合分区

在阳江等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站设计、网站建设 网站设计制作按需求定制制作,公司网站建设,企业网站建设,高端网站设计,营销型网站,成都外贸网站建设公司,阳江网站建设费用合理。

由于Interval分区是针对range的,11g-12.1版本,目前只有Interval—*一共3种Interval的复合分区

range-list方法:

partition by range (updatetime)

interval (numtodsinterval(1,'day'))

subpartition by list(PSNCODE)

SUBPARTITION TEMPLATE(

SUBPARTITION REGION_1 values('038716'),

SUBPARTITION REGION_2 values('270719') )

(partition p1 values less than(to_date('2014-05-01','yyyy-mm-dd')))

注意:每个分区有2个子分区,分区的子分区需要手动添加

Interval分区目前测试,只支持range先分区的方式

range-hash方法:每个分区10个子hash分区(可以指定每个子分区到单独的表空间)

partition by range (updatetime)

interval(numtodsinterval(1,'day'))

subpartition by hash(PSNCODE)

SUBPARTITION template

( SUBPARTITION p1 TABLESPACE ts1

, SUBPARTITION p2 TABLESPACE ts2

, SUBPARTITION p3 TABLESPACE ts3

, SUBPARTITION P4 TABLESPACE ts4

)

(partition p1 values less than(to_date('2014-05-01','yyyy-mm-dd')))

注意:这种方式可以实现完全自动的分区,非常适合自增长特性的10位数以上的大表

hash分区最好是2的次方个,不然数据会分布不均

range-range方法:子分区需要手动添加,这种分区需要一般比较少见

PARTITION BY RANGE (time_id)

INTERVAL (NUMTODSINTERVAL(1,'DAY'))

SUBPARTITION BY RANGE(amount_sold)

SUBPARTITION TEMPLATE

( SUBPARTITION p_low VALUES LESS THAN (1000)

, SUBPARTITION p_medium VALUES LESS THAN (4000)

, SUBPARTITION p_high VALUES LESS THAN (8000)

, SUBPARTITION p_ultimate VALUES LESS THAN (maxvalue)

)

(PARTITION before_2000 VALUES LESS THAN (TO_DATE('01-JAN-2000','dd-MON-yyyy')) )

oracle建分区问题

首先,里边有数据不太好办,不过可以这样

create table T_BUSINESS_MONITOR_TMP as select * from T_BUSINESS_MONITOR;

然后,把原表清空

truncate table T_BUSINESS_MONITOR;

然后加上分区

alter table T_BUSINESS_MONITOR add partition p201301 VALUES LESS THAN (TO_DATE(' 2013-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN') tablespace 表空间名;

看好了,前边的分区名是201301,后边的to_date的日期是20130201,不要弄错了,当然,这个可以指定使用的表空间,

这样的话,你要按照此语句建12个分区,最后一个就应该是名字为p201312 ,时间就是2014-01-01,

然后,把你之前的表的数据弄过来

insert into T_BUSINESS_MONITOR select * from T_BUSINESS_MONITOR_TMP;

commit;

最后把备份表删除

drop table T_BUSINESS_MONITOR_TMP

oracle如何按照mod建分区

根据数据表字段值的范围进行分区。

创建完分区表后向表中添加一些数据,declarenamevarchar2(10)。fractionnumber(5)。gradenumber(5)。inumber(8):=1。begin。foriin1。100000LOOP。当我们的查询语句不指定分区的时候,如果分区字段出现在where条件之后,Oracle会自动根据字段值的范围扫描响应的分区。


分享文章:包含oracle如何建分取的词条
网页网址:http://pwwzsj.com/article/hhdihe.html