如何更改现有表以在Oracle中创建范围分区
发布时间:2021-03-07 22:30:10 所属栏目:站长百科 来源:网络整理
导读:我有现有的表有10年的数据(我已经采取转储). 我想在表中的一个日期键列上对现有表进行Range分区. 我看到的大多数示例都是使用CREATE TABLE..PARTITION BY RANGE …添加新分区.但我的桌子是现有的桌子. 我假设我需要一些ALTER语句. ALTER TABLE TABLE_NAMEPAR
我有现有的表有10年的数据(我已经采取转储). 我想在表中的一个日期键列上对现有表进行Range分区. 我看到的大多数示例都是使用CREATE TABLE..PARTITION BY RANGE …添加新分区.但我的桌子是现有的桌子. 我假设我需要一些ALTER语句. ALTER TABLE TABLE_NAME PARTITION BY RANGE(CREATED_DATE) PARTITION JAN16 VALUES LESS THAN (01-02-2016),PARTITION FEB16 VALUES LESS THAN (01-03-2016) AND GREATER THAN(31-01-2016),//OR? PARTITION MAR16 VALUES BETWEEN (01-03-2016) AND (31-03-2016),//OR? 两个问题.. >我是否需要Alter语句来添加分区机制或需要使用create语句? 解决方法因为你的表没有分区你有两个选择:>导出数据,删除表,创建新的patitioned表,导入数据. 此外,如果您希望每月新分区,请阅读SET INTERVAL.例如: CREATE TABLE tst (col_date DATE) PARTITION BY RANGE (col_date) INTERVAL (NUMTOYMINTERVAL(1,'MONTH')) (PARTITION col_date_min VALUES LESS THAN (TO_DATE('2010-01-01','YYYY-MM-DD'))); (编辑:广西网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐