--查看数据库中所有用户的分区表 SELECT * FROM DBA_TABLES WHERE PARTITIONED='YES' AND OWNER NOT IN ('SYSTEM','SYS') ORDER BY OWNER --查看当前用户下的分区表 SELECT * FROM USER_TABLES WHERE PARTITIONED='YES' --创建分区表--注意 PARTITION 的字段不能为空 CREATE TABLE TABLE_TEST ( ID VARCHAR2(36 CHAR) NOT NULL PRIMARY KEY, EVENT_ID VARCHAR2(36 CHAR), PATIENT_ID VARCHAR2(36 CHAR), PATIENT_NAME VARCHAR2(50 CHAR), WARD_ID VARCHAR2(36 CHAR), WARD_NAME VARCHAR2(50 CHAR), ISSUE_TIME DATE ) PARTITION BY RANGE (ISSUE_TIME) INTERVAL ( NUMTOYMINTERVAL (3, 'MONTH') ) --每3个月建一个分区 ( PARTITION P1 VALUES LESS THAN (TO_DATE('2018-1-1', 'YYYY-MM-DD')) --15年之前的数据统一建一个分区 ) --将现有表修改成分区表(此方法配合 RENAME TABLE_NAME TO TABLE_NAME_NEW 适用于数据迁移) CREATE TABLE E_CHARGE_RECORD_1 PARTITION BY RANGE (ISSUE_TIME) INTERVAL ( NUMTOYMINTERVAL (3, 'MONTH') ) --每3个月建一个分区 ( PARTITION P1 VALUES LESS THAN (TO_DATE('2015-1-1', 'YYYY-MM-DD')) --15年之前的数据统一建一个分区 ) AS SELECT * FROM E_CHARGE_RECORD;
测试效果