Oracle——创建表分区:散列分区HASH

散列分区关键字:HASH

如果表的某个列的值可以枚举,则可以考虑对表进行列表分区。

例1:根据自身情况散列

创建一个商品零售表,然后将该表id列的值根据自身情况散列地存储在指定的两个表空间中。

---1.分区
create table ware_retail_part3(id integer primary key,ratail_date date,ware_name varchar2(50)) 
partition by hash(id) 
(
partition par_has_01  tablespace TBSP_1,--2022年第一季度par_has_01  
partition par_has_02  tablespace TBSP_2 --2022年第二季度par_has_02  
);

-------2.插入数据
insert into ware_retaail_part3 values(98,to_date('2023-01-21','yyyy-mm-dd'),'电脑');
------3.查看分区数据(Oracle通过id的HASH值进行判断)
select * from ware_retail_part3 partition(par_has_02);

例2:自动生成分区名

首先创建一个表test,然后为该表创建HASH列分区(ID),要求创建的两个分区由系统自动生成分区名,并分别放置在test_1和test_2中。

----1.创建分区
create table test(id integer primary key,name varchar2(10),sex varchar2(2)) 
partition by hash(id) --使用id作为HASH分区的键值
partitions 2 --创建两个分区,分区名由系统自动给出
store in(test_1,test_2 --指定两个不同的命名空间
);
------2.插入数据
insert into person values(1,'姓名1','女');

例3:指定初始化空间

创建一个goods表,为该表创建HASH列分区(id),并为创建的表分区指定初始化空间,大小为2048kb。

----创建分区
create table goods(id number,goodname varchar2(50))
storage(initial 2048k) --定义表分区的初始化空间大小为2048
partition by hash(id) --创建id列作为分区键的HASH表分区
(
partition par1 tablespace tbsp_1,
partition par2 tablespace tbsp_2
);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值