我的桌子上有多个分区,如下所示。
分区-Day_20190509的高价值20190510
分区-Day_20190520,具有高价值20190521
分区-Day_99999999,最大值为MAXVALUE。
我想为Day_20190510,Day_20190513,Day_20190514创建三个新分区,其高值分别为20190513、20190514、20190520。
我相信可以使用SPLIT分区来完成此操作,但无法理解如何在两者之间创建分区。有人可以协助查询吗?
我尝试使用分区分割选项,但不了解我的范围部分和新分区是什么
ALTER TABLE table_name SPLIT PARTITION partition_name
AT (range_part_value)
INTO
(
PARTITION new_part1
[TABLESPACE tablespace_name],
PARTITION new_part2
[TABLESPACE tablespace_name]
);
答案 0 :(得分:0)
您在新分区(Day_20190510,Day_20190513,Day_20190514)中描述为高值(20190513、20190514、20190520)的值属于当前分区:Day_20190520(值范围:20190511-20190521)
因此,当前分区Day_20190520必须按以下方式拆分:
ALTER TABLE table_name SPLIT PARTITION Day_20190520 INTO
(PARTITION Day_20190510 VALUES LESS THAN (20190514), -- 20190513 + 1
PARTITION Day_20190513 VALUES LESS THAN (20190515), -- 20190514 + 1
PARTITION Day_20190514 VALUES LESS THAN (20190521), -- 20190520 + 1
PARTITION Day_20190520_1);
希望这可以解决您的问题。