Oracle创建自增表分区之按月、按天自增表分区步骤详解

 更新时间:2023年11月25日 09:37:21   作者:ZimMer@柠檬  
这篇文章主要给大家介绍了关于Oracle创建自增表分区之按月、按天自增表分区的相关资料,Oracle表对数据进行月度分区是一种将数据分组的有效方法,此方法是将数据根据它们所属时间段将其存储为不同分区,需要的朋友可以参考下

一、创建按月自增分区表

提示:接下来将按照执行步骤进行介绍;

注:在进行表分区情况查询时,表的名称必须要大写

步骤一:创建按月自增表

create table month_partition_zz_table  --自增表明
(id integer,month_time date) --表字段
partition by range(month_time) --表分区字段
interval (numtoyminterval(1,'month')) --按月自增分区
(
partition p_month_1 values less than (to_date('2023-01-01','yyyy-mm-dd')) --第一个分区表
);

步骤二:查看表现有分区

select * 
from user_tab_partitions --系统分区记录表
where table_name=upper('month_partition_zz_table');

步骤三:使用匿名代码块按月插入数据

begin
  for i in 1..12 loop
      insert into month_partition_zz_table values(i,add_months(to_date('2023-01-01','yyyy-mm-dd'),i-1));
  end loop;
  commit;
end;

查看已经插入的表数据;

select * from month_partition_zz_table;  --查看表内容
truncate table month_partition_zz_table; --清空表
drop table month_partition_zz_table;  --删除表

步骤四:查看表是否按月进行分区

select * 
from user_tab_partitions 
where table_name=upper('month_partition_zz_table');

步骤五:查看表分区内的数据情况

select * From month_partition_zz_table partition(SYS_P76);
select * From month_partition_zz_table partition(SYS_P87);

二、创建按天自增分区表

提示:接下来将按照执行步骤进行介绍;

步骤一:创建按天自增表

create table day_partition_zz_table --自增表名
(id number,day_time date) --表中字段
partition by range(day_time)  --分区字段
interval (numtodsinterval(1,'day'))  --自增天
(
partition p_day_1 values less than (to_date('2023-09-08','yyyy-mm-dd')) --第一天分区表
);

步骤二:查看表现有分区

select * 
from user_tab_partitions 
where table_name=upper('day_partition_zz_table');

步骤三:使用匿名代码块按天插入数据

begin
  for i in 0..10 loop
     insert into day_partition_zz_table values(i,trunc(to_date('2023-09-08','yyyy-mm-dd')+i));
  end loop;
  commit;
end;

查看已经插入的表数据;

select * from day_partition_zz_table;  --查看表内容
truncate table day_partition_zz_table; --清空表
drop table day_partition_zz_table;  --删除表

步骤四:查看表是否按天进行分区

select * 
from user_tab_partitions 
where table_name=upper('month_partition_zz_table');

步骤五:查看表分区内的数据情况

select * From day_partition_zz_table partition(P_DAY_1); --无数据
select * From day_partition_zz_table partition(SYS_P88);  --2023/9/8
select * From day_partition_zz_table partition(SYS_P98); --2023/9/18

总结

到此这篇关于Oracle创建自增表分区之按月、按天自增表分区的文章就介绍到这了,更多相关Oracle按月按天自增表分区内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Oracle数据库ORA-12560错误问题的解决办法

    Oracle数据库ORA-12560错误问题的解决办法

    这篇文章主要介绍了Oracle数据库ORA-12560错误解决办法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • Oracle判断指定列是否全部为数字的sql语句

    Oracle判断指定列是否全部为数字的sql语句

    判断指定列是否全部为数字在实际应用过程中很常见,下面是具体的示例语句,由此需求的朋友可以借鉴下,希望对大家有所帮助
    2013-07-07
  • Oracle数据库由dataguard备库引起的log file sync等待问题

    Oracle数据库由dataguard备库引起的log file sync等待问题

    这篇文章主要介绍了Oracle数据库由dataguard备库引起的log file sync等待,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • 在Oracle的函数中,返回表类型的语句

    在Oracle的函数中,返回表类型的语句

    在SQL Server中有表变量,可以在function中方便地返回,习惯SQL Server或者需要把脚本从SQL Server转到Oracle中的朋友可以都会碰到这个问题
    2012-10-10
  • [Oracle] 彻底搞懂Oracle字符集

    [Oracle] 彻底搞懂Oracle字符集

    以下是对Oracle中的字符集进行了详细的分析介绍,需要的朋友可以参考下
    2013-07-07
  • Oracle学习笔记之视图及索引的使用

    Oracle学习笔记之视图及索引的使用

    这篇文章主要介绍了Oracle学习笔记之视图及索引的使用,视图是基于一个表或多个表或视图的逻辑表,本身不包含数据,通过它可以对表里面的数据进行查询
    2022-07-07
  • Oracle中update和select 关联操作

    Oracle中update和select 关联操作

    本文主要向大家介绍了Oracle数据库之oracle update set select from 关联更新,通过具体的内容向大家展现,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2022-01-01
  • ORACLE实例的后台进程

    ORACLE实例的后台进程

    Oralce实例由内存和后台进程构成。实例后台进程在启动实例时启动,在终止实例时终止运行。
    2009-09-09
  • SQL Developer迁移第三方数据库单表到Oracle的全过程

    SQL Developer迁移第三方数据库单表到Oracle的全过程

    这篇文章主要介绍了SQL Developer迁移第三方数据库单表到Oracle的全过程,文章通过图文结合的方式给大家讲解的非常详细,具有一定的参考价值,需要的朋友可以参考下
    2024-06-06
  • oracle delete误删除表数据后如何恢复

    oracle delete误删除表数据后如何恢复

    最近在使用oracle数据时,一不小心把table中的数据delete掉并且已经提交了,下面这篇文章主要给大家介绍了关于oracle delete误删除表数据后如何恢复的相关资料,需要的朋友可以参考下
    2022-06-06

最新评论