电脑技术学习

Oracle使用新List分割方法提高灵活性

dn001
Oracle9i现在有两个方法可以完成分割:range分割和新的list分割。但是range分割需要标量数值,而list分割答应使用非标量数值。 要区分range分割和list分割,让我们看一个简单的例子。现在我们看一个range分割的表,然后使用area_code来分割数据:
     Create table customer   (     Last_name varchar2(30),     area_code number     . . .   )   PARTITION BY RANGE (area_code)   (     PARTITION part_505 values less than(505),     PARTITION part_212 values less than(212),     PARTITION part_919 values less than(919),     PARTITION part_252 values less than(252),     PARTITION part_415 values less than(MAXVALUE)   );
   不像range分割需要一个NUMBER或者DATE标量值,list分割可以用于根据你想用的任何值来分割数据。下面是一个customer数据库的例子,其数据根据州(state)进行分割:
     create table     customer     (col values)   partition by list (state_name)   partition yankees values ('New York','Maine'),   partition rebels values ('North Carolina', South Carolina');
   我们可以看到,list分割为大型Oracle表增加了很大的灵活性,而且在进行逻辑划分行数据的时候给了你更多的选择。

上一篇 管理Oracle OLAP时清除通往OLAP的障碍

下一篇 Oracle数据库中临时表的深入研究