永发信息网

oracle中表的所有分区方式,以及适用范围,并举出相应的例子

答案:1  悬赏:40  手机版
解决时间 2021-06-02 07:36
  • 提问者网友:遮云壑
  • 2021-06-01 17:41
oracle中表的所有分区方式,以及适用范围,并举出相应的例子,在线等中,不要发网站,和贴别人的,简易的总结最好
最佳答案
  • 五星知识达人网友:神也偏爱
  • 2021-06-01 17:47

--创建范围分区
create table temp1
(
empno number ,
ename varchar2(1000),
sal number
)
partition by range (sal)
(
partition p1 values less than (1000),
partition p2 values less than (2000),
partition p3 values less than (3000)
--如果是日期 to_date('2004-01-01','YYYY-MM-DD')或 date '2004-01-01'
);
--创建散列分区
create table temp3
(
empno number ,
ename varchar2(1000),
sal number
)
partition by hash (sal)
(
partition p1,
partition p2,
partition p3,
partition p4
);

create table temp3
(
empno number ,
ename varchar2(1000),
sal number
)
partition by hash (sal)
partitions 4;


--创建(范围-散列)复合分区
create table temp1
(
empno number ,
ename varchar2(1000),
sal number
)
partition by range (sal)
subpartition by hash (empno)
subpartitions 5
(
partition p1 values less than (1000),
partition p2 values less than (2000),
partition p3 values less than (3000)
)
--创建(范围-列表)复合分区
create table temp1
(
empno number ,
ename varchar2(1000),
sal number
)
PARTITION BY RANGE (sal)
SUBPARTITION BY LIST (ename)
SUBPARTITION TEMPLATE
(SUBPARTITION man VALUES ('刘德华', '张学友'),
SUBPARTITION woman VALUES ('王菲', '赵薇'),
SUBPARTITION other VALUES (DEFAULT))
(PARTITION p1 VALUES LESS THAN (1000),
PARTITION p2 VALUES LESS THAN (2500),
PARTITION p3 VALUES LESS THAN (3000));
--创建列表分区


create table temp2
(
empno number(10) ,
ename varchar2(1000),
sal number(10)
)
partition by list (ename)
(
partition ldh values ('刘德华'),
partition zrf values ('周润发'),
partition qt values ('王菲','赵薇')
);


----------------------------------


以上决定是本人自己编写出来的。


复合分区:两种分区方式一起用


列表分区:与指定的值相符合的分为一个区


范围分区:在指定的范围分为一个区


散列分区:无规则分区,系统自带的一个算法进行分区


希望以上对你有帮助!

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯