oracle 分区

创建分区

--先声明一下:列表分区不支持多列,但是范围分区和哈希分区支持多列。

create table graderecord
-- 范围分区 根据列的值的范围
(
sno varchar2(10),
sname varchar2(20),
dormitory varchar2(3),
grade int)
partition by range(grade)(
          partition fail values less than(60),
          partition pass values less than(85),
          partition excellent values less than(maxvalue)
)

select * from graderecord

select * from graderecord partition(fail)

-- 散列分区 根据字段的hash分布
partition by hash(sno)(
partition p1,
partition p2,
partition p3
)

-- 列表分区 根据列的值的具体值
partition by list(dormitory)(
partition d229 values('229'),
partition d228 values('228'),
partition d240 values('240')
)

-- 符合分区 范围分区和hash分区
partition by range(grade)
subpartition by hash(sno,sname)(
             partition p1 values less than(75)
             (
             subpartition sp1,subpartition sp2
             ),
             partition p2 values less than(maxvalue)
             (
             subpartition sp3,subpartition sp4
             )
)
 

 

查看分区

select object_name,subobject_name from user_objects

where object_type = 'TABLE PARTITION'

 

删除分区,子分区

alter table [tbname] drop partition [ptname];

alter table [tbname] drop subpartition [ptname];

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值