定语复合分区表的2种语法

1、在每个分区中嵌套子分区:

create table ptest(id int ,name varchar2(30),gender varchar2(1))
partition by range(id)
subpartition by list(gender)
(
partition p1 values less than(10)
(subpartition p1_1 values ('f'),
subpartition p1_2 values ('m'),
subpartition p1_3 values (default)),
partition p2 values less than (maxvalue)
(subpartition p2_1 values ('f'),
subpartition p2_2 values ('m'),
subpartition p2_3 values (default))
);


2、给出一个子分区的模板,就不用每个分区里都嵌套子分区了,简洁一些:

create   table   ptest2 
( 
  id   number(3), 
  name   varchar2(20), 
  sex   varchar2(4), 
  age   number(3) 
) 
partition   by   range   (age) 
subpartition   by   list   (sex) 
SUBPARTITION   TEMPLATE 
( 
  subpartition   p1_subp1   values( 'boy'), 
  subpartition   p1_subp2   values( 'girl') 
) 
( 
  partition   p1   values   less   than   (10), 
  partition   p2   values   less   than   (20), 
  partition   p3   values   less   than   (30)
);


3、查询子分区的内容:

  select * from ptest /*partition(p1) */subpartition(p1_2);


4、查询分区表的一些常用视图:

select * from user_part_tables;  ---查分区表
select * from user_tab_partitions order by 3 ;  ---查分区
select * from user_tab_subpartitions order by 3 ;  ---查子分区


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值