使用新的list分割方法提高灵活性

资讯 驱动中国 rocket 2,958 次阅读 0 条评论
分享 Q

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表增加了很大的灵活性,而且在进行逻辑划分行数据的时候给了你更多的选择。
 

版权声明:本文由驱动中国整理发布,转载需注明出处与原文链接。如有疑问请联系 editor@qudong.com
本文价值 成为第一个评分的人
登录后为本文打分
网友评论0 条评论
正在回复 的评论取消
评论加载中…
🔐

登录后参与互动

评论、点赞均可赚积分
连续签到、邀请好友也有奖励 🎁

电脑端: 微信扫码登录 微信内: 一键登录

微信扫一扫

打开微信「扫一扫」,分享本文到朋友圈或好友