假如已创建的表不能再创建分区,只有重新建分区表,然后将数据导入表中,再将表名改为原表名:
1.我的原表名为MONITOR_DATA,现在建临时分区表:
CREATE TABLE GPS_MONITOR_DATA_TMP
(
DATA_ID CHAR(36 BYTE) NOT NULL,
EQUIP_ID CHAR(36 BYTE) NOT NULL,
GPS_DATE DATE NOT NULL,
CREATE_DATE DATE NOT NULL,
SPEED NUMBER(3) NOT NULL,
KILOMETER NUMBER(6,2) NOT NULL,
LNG NUMBER(7,4) NOT NULL,
LAT NUMBER(7,4) NOT NULL
)
PARTITION BY RANGE (GPS_DATE)
INTERVAL (NUMTOYMINTERVAL(1, 'MONTH'))
(PARTITION P1 VALUES LESS THAN (TO_DATE('2015-7-1', 'YYYY-MM-DD')));
按GPS_DATE按月建分区表,因为我的数据是从2015-7-1有的数据,所以开始日期要写2015-7-1
2.创建好表后,将原表数据导入到该临时表
INSERT INTO GPS_MONITOR_DATA_TMP
SELECT * FROM GPS_MONITOR_DATA
本文详细介绍了如何在已存在的表无法直接分区的情况下,通过新建分区表、导入原始数据并重命名表名来实现数据分区的过程。以MONITOR_DATA为例,通过按月创建临时分区表、导入原有数据、删除原表并重命名临时表为原表名,完成数据的高效管理和查询。
1796

被折叠的 条评论
为什么被折叠?



