创建固定分区表
1. 按照字符串值分区
CREAT TABLE 表名 (
字段1 varchar2(32),
字段2 varchar2(32) )
PARTITION BY LIST ( 分区字段 )
(
PARTITION 分区值 VALUES ('字段值') )
2. 按照日期分区
CREAT TABLE 表名 (
字段1 varchar2(32),
字段2 varchar2(32) )
PARTITION BY RANGE (TIME)
(
PARTITION 分区值 VALUES LESS THAN (to_date('2021-01-01','yyyy-mm-dd')),
PARTITION 分区值 VALUES LESS THAN (to_date('2022-01-01','yyyy-mm-dd')))
创建自增分区表
1. CREAT TABLE 表名 (
字段1 varchar2(32),
字段2 varchar2(32) )
PARTITION BY RANGE (TIME) -- 分区字段
INTERVAL (numtodsinterval(1,'day/month/year')) -- 自增方式
(
partition last_year values less than (to_date('2020-01-01','yyyy-mm-dd')) -- 分区起点
)
给分区表增加分区
1. alter table 表名 add partition 分区值 values ('字段值');
2. alter table 表名 add partition 分区值 values less than (TO_DATE(' 2021-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'));
给已有的表进行分区
- 重命名
ALTER TABLE old_table RENAME TO new_table- 建立分区表
- 插入原表数据
INSERT INTO new_table SELECT * FROM old_table- 删除原表(随意)
DROP TABLE old_table