使用Oracle Database 11g可以创建新类型的Interval分区表,Interval类型分区表,可以根据加载数据,自动创建指定间隔的分区。

比如创建按月分区的分区表:Create table intervalpart

(c1 number, c2 varchar2(10) , c3 date)

partition by range (c3)

interval(numtoyminterval(1,'MONTH'))

(

partition part1 values less than (to_date('09/15/2007','MM/DD/YYYY')),

partition part2 values less than (to_date('10/15/2007','MM/DD/YYYY')),

partition part3 values less than (to_date('11/15/2007','MM/DD/YYYY'))

)

/

注意如果你的INTERVAL指定错误,则数据库会报出如下错误:ORA-14752: Interval expression is not a constant of the correct type

下面创建一个以天为间隔的分区表:SQL> create table sales

2 (

3 sales_id number,

4 sales_dt date

5 )

6 partition by range (sales_dt)

7 INTERVAL (NUMTODSINTERVAL(1,'day'))

8 (

9 partition p090101 values less than (to_date('2009-01-01','yyyy-mm-dd'))

10 );

Table created.

SQL> select table_name,partition_name from user_tab_partitions;

TABLE_NAME PARTITION_NAME

------------------------------ ------------------------------

SALES P090101

SYS_FBA_HIST_16585 HIGH_PART

插入测试数据:SQL> begin

2 for i in 1 .. 35 loop

3 insert into sales values(i,trunc(sysdate,'YYYY')+i);

4 end loop;

5 commit;

6 end;

7 /

PL/SQL procedure successfully completed.

观察自动创建的分区:SQL> select table_name,partition_name from user_tab_partitions;

TABLE_NAME PARTITION_NAME

------------------------------ ------------------------------

SALES SYS_P47

SALES SYS_P48

SALES SYS_P49

SALES SYS_P50

SALES SYS_P51

SALES SYS_P52

SALES SYS_P53

SALES SYS_P54

SALES SYS_P55

SALES P090101

SALES SYS_P21

TABLE_NAME PARTITION_NAME

------------------------------ ------------------------------

SALES SYS_P22

SALES SYS_P23

SALES SYS_P24

SALES SYS_P25

SALES SYS_P26

SALES SYS_P27

SALES SYS_P28

SALES SYS_P29

SALES SYS_P30

SALES SYS_P31

SALES SYS_P32

TABLE_NAME PARTITION_NAME

------------------------------ ------------------------------

SALES SYS_P33

SALES SYS_P34

SALES SYS_P35

SALES SYS_P36

SALES SYS_P37

SALES SYS_P38

SALES SYS_P39

SALES SYS_P40

SALES SYS_P41

SALES SYS_P42

SALES SYS_P43

TABLE_NAME PARTITION_NAME

------------------------------ ------------------------------

SALES SYS_P44

SALES SYS_P45

SALES SYS_P46

SYS_FBA_HIST_16585 HIGH_PART

37 rows selected.

SQL> alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';

Session altered.

SQL> select * from sales partition (sys_p44) ;

SALES_ID SALES_DT

---------- -------------------

24 2009-01-25 00:00:00

SQL> select * from sales partition (sys_p33);

SALES_ID SALES_DT

---------- -------------------

13 2009-01-14 00:00:00

SQL> select * from sales partition (sys_p46);

SALES_ID SALES_DT

---------- -------------------

26 2009-01-27 00:00:00

这一特性极大简化了分区表的维护工作。

oracle自动建立分区interval,使用Oracle 11g创建Interval分区表(转)相关推荐

  1. oracle变更为大表分区表,叶摇 » Blog Archive » oracle把没有分区的普通大表改成分区表...

    oracle把没有分区的普通大表改成分区表 1.根据要改成分区的表的结构创建一张一样结构的表: create table PARA_CELL_W_HIS_EXCHANGE ( START_TIME D ...

  2. Oracle 11g创建Interval分区表

    1.      interval使用之后,就不用手工增加分区,来适应数据的增长. 2.      根据年月 INTERVAL(NUMTO YM INTERVAL(1,'YEAR'))         ...

  3. oracle三种分区的方式,Oracle 分区表 总结大全(3)

    (10) Horizontal sub setting of data cannot be performed during the redefinition. 在Oracle 10.2.0.4和11 ...

  4. windows10 oracle自动备份,Windows系统下oracle 自动备份数据库

    Windows系统下oracle 自动备份数据库 1.创建批处理文件(.bat) 2.建立windows 定时任务 2.1创建任务 2.2 常规处 ->填写任务名称 2.3触发器 2.4 操作 ...

  5. sqoop从oracle导入hive分区,sqoop从oracle导入hive Hive exited with status 64

    导入命令 ./sqoop import -Dmapreduce.map.java.opts=-Xmx3000m -Dmapreduce.map.memory.mb=3200 --connect jdb ...

  6. oracle 手动添加分区,如何在oracle中创建子分区?

    现在我开始学习oracle.some中的分区概念了.我现在如何管理分区,我试图在Oracle中创建子分区.我得到这个错误如何在oracle中创建子分区? SQL Error: ORA-14160: t ...

  7. Oracle如何建立多库,基于Oracle多库查询方法(分享)

    基于Oracle多库查询方法(分享) 本文简述了通过创建database link实现ORACLE跨数据库查询的方法 1.配置本地数据库服务器的tnsnames.ora文件 $vi $ORACLE_H ...

  8. linux格式化大于2t硬盘分区,linux下大于2tb硬盘格式化及挂载,linux下大于2t的分区方法,linux gpt分区表 管理 自动挂载分区...

    linux下大于2tb硬盘格式化及挂载,linux下大于2t的分区方法,linux gpt分区表 管理 自动挂载分区 (7页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找 ...

  9. oracle 增加间隔分区,oracle分区表之间隔分区(oracle 11g) - 漫兮网

    范围分区允许用户根据分区键列值的范围创建分区.下面是一个按范围分区表的示例: create table sales6 ( sales_id number, sales_dt date ) partit ...

  10. oracle 定时器时间分区_Oracle数据库之oracle按时间分区以及自动分区

    本文主要向大家介绍了Oracle数据库之oracle按时间分区以及自动分区,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助. (1) --- 创建按时间分区的表 create ta ...

最新文章

  1. GTA 5真香!哦不,我在用深度学习做自动驾驶
  2. 十项观察!药物开发中的AI现状
  3. Vue.js 条件渲染
  4. QTableWidget控件总结
  5. java对象和字符串转换_java中字符串和JSON对象、Bean之间的相互转换
  6. 冰点文库下载V2绿色版,无需积分自由下载百度,mbalib,豆丁,畅享,hp009,max.book118 文档...
  7. python消费kafka_Python脚本消费kafka数据
  8. C# 使用 Task 替换 ThreadPool ,异步监测所有线程(任务)是否全部执行完毕
  9. html5实现效果代码,js+html5实现的自由落体运动效果代码
  10. loadrunner 11下载及破解
  11. 用Python全自动播放尔雅网课
  12. 如何将swf文件转换成pdf
  13. 联想MIIX510 黑苹果教程 整机升级
  14. 学习记录-FDD大规模MIMO系统的稀疏信道估计技术研究
  15. MySQL基础 创建学生表实现查询基础功能
  16. 数组最大值和最小值的求法
  17. 第三章 坐标系与投影转换之基准面和坐标系的分类基本知识
  18. 云时代的应用性能管理(APM)
  19. VS Code 高效“摸鱼”插件推荐
  20. 美国加州中学课本 教材介绍 - Glencoe系列- 美国初中语文 数学 科学 健康

热门文章

  1. 数据库课程设计基本框架(PHP+MySQL)
  2. JAVA求解【乱序整数序列两数之和绝对值最小】
  3. Centos7下内网YUM源搭建
  4. HZOI20190903模拟36 字符,蛋糕,游戏
  5. 树莓派 外接HDMI线显示屏分辨率设置
  6. idea local history说明
  7. 澳门科技大学计算机专业研究生,澳门科技大学 计算机专业
  8. 百度离线地图金字塔瓦片发布
  9. N沟道和P沟道MOS管的四个不同点
  10. web api接口开发实例_vn.py交易API接口开发小班课(第二期)