更新时间:2024-11-12 GMT+08:00
对*-RANGE二级分区表分割二级分区
使用ALTER TABLE SPLIT SUBPARTITION可以对*-RANGE二级分区表分割二级分区。
例如,假设*-RANGE二级分区表list_range_sales的二级分区channel1_customer4的定义范围为[1000, MAXVALUE)。可以指定分割点1200将二级分区channel1_customer4分割为两个分区,并更新Global索引。
ALTER TABLE list_range_sales SPLIT SUBPARTITION channel1_customer4 AT (1200) INTO ( SUBPARTITION channel1_customer4_p1, --第一个分区上界是1200 SUBPARTITION channel1_customer4_p2 --第二个分区上界是MAXVALUE ) UPDATE GLOBAL INDEX;
或者,不指定分割点,将分区channel1_customer4分割为多个分区,并更新Global索引。
ALTER TABLE list_range_sales SPLIT SUBPARTITION channel1_customer4 INTO ( SUBPARTITION channel1_customer4_p1 VALUES LESS THAN (1200), SUBPARTITION channel1_customer4_p2 VALUES LESS THAN (1400), SUBPARTITION channel1_customer4_p3 --第三个分区上界是MAXVALUE )UPDATE GLOBAL INDEX;
又或者,通过指定分区值而不是指定分区名来分割分区。
ALTER TABLE range_sales SPLIT SUBPARTITION FOR ('1', 1200) AT (1200) INTO ( PARTITION channel1_customer4_p1, PARTITION channel1_customer4_p2 ) UPDATE GLOBAL INDEX;
若对MAXVALUE分区进行分割,前面几个分区不能申明MAXVALUE范围,最后一个分区会继承MAXVALUE分区范围。
父主题: 分割分区