ITPub博客

首页 > 应用开发 > IT综合 > 分区--复合分区

分区--复合分区

原创 IT综合 作者:itpremier 时间:2011-06-04 23:28:32 0 删除 编辑

--测试总结:

复合分区,有个很奇妙的地方,就是当数据插入到符合条件的第一个分区中。

实现算法推测:

对于按C1,C2两列进行复合分区的情况,插入时,首先判断是否小于C1,如果有匹配分区,则插入到符合条件的第一个分区中,否则如果插入的值=C1,则判断C2,如果有匹配分区,则插入到符合条件的第一个分区中。

第二种理解:复合分区其实等同于单列分区,只是将多个列按二进制存放格式拼组在一起,组成一个单列字段。插入数据时,将分区字段值也按二进制存放格式拼组在一起进行单值判断。

drop table pt1 ;
create table pt1 (
id1 number ,
id2 number ,
CITY VARCHAR2(30),
ID3 NUMBER(38) GENERATED ALWAYS AS (ID2*ID1 )
)
partition by RANGE (city,id1 )
(
partition p1 values LESS THAN ('BEIJING', 11),
partition p2 values LESS THAN ('BEIJING', 21),
partition p3 values LESS THAN ('TIANJIN', 11),
partition p4 values LESS THAN ('TIANJIN', 21)
) ;

--ALTER TABLE PT1 MODIFY PARTITION P1 ADD SUBPARTITION SP2 values ('TIANJIN') ;
TRUNCATE TABLE PT1 ;
insert into pt1 ( id1, city)
select rownum, 'BEIJING' from dual connect by rownum<31 ;

[@more@]

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/350519/viewspace-1050787/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-11-27

  • 博文量
    253
  • 访问量
    773709