Oracle分区表常用于业务中大表使用,如历史交易记录表等,提高表记录查询效率。本文主要描述范围分区表的创建、新增以及索引创建。

Oracle操作分区表相关信息

显示数据库所有分区表的信息:DBA_PART_TABLES
SQL> select owner,table_name,partitioning_type,partition_count,partitioning_key_count,status from dba_part_tables;
显示当前用户可访问的所有分区表信息:ALL_PART_TABLES
显示当前用户所有分区表的信息:USER_PART_TABLES
显示表分区信息 显示数据库所有分区表的详细分区信息:DBA_TAB_PARTITIONS
显示当前用户可访问的所有分区表的详细分区信息:ALL_TAB_PARTITIONS
显示当前用户所有分区表的详细分区信息:USER_TAB_PARTITIONS
显示子分区信息 显示数据库所有组合分区表的子分区信息:DBA_TAB_SUBPARTITIONS
显示当前用户可访问的所有组合分区表的子分区信息:ALL_TAB_SUBPARTITIONS
显示当前用户所有组合分区表的子分区信息:USER_TAB_SUBPARTITIONS
显示分区列 显示数据库所有分区表的分区列信息:DBA_PART_KEY_COLUMNS
显示当前用户可访问的所有分区表的分区列信息:ALL_PART_KEY_COLUMNS
显示当前用户所有分区表的分区列信息:USER_PART_KEY_COLUMNS
显示子分区列 显示数据库所有分区表的子分区列信息:DBA_SUBPART_KEY_COLUMNS
显示当前用户可访问的所有分区表的子分区列信息:ALL_SUBPART_KEY_COLUMNS
显示当前用户所有分区表的子分区列信息:USER_SUBPART_KEY_COLUMNS

1、分区表创建

CREATE TABLE range_example(
range_key_column DATE,
DATA VARCHAR2(20),
ID integer
) PARTITION BY RANGE(range_key_column)
(
PARTITION part_20171101 VALUES LESS THAN (TO_DATE('2017-11-01 00:00:00','yyyy-mm-dd hh24:mi:ss')),
PARTITION part_20171102 VALUES LESS THAN (TO_DATE('2017-11-02 00:00:00','yyyy-mm-dd hh24:mi:ss')),
PARTITION part_20171103 VALUES LESS THAN (TO_DATE('2017-11-03 00:00:00','yyyy-mm-dd hh24:mi:ss'))
);

说明:如果是已创建的分区表,可以通过PL/SQL查看分区表创建语句。判断分区表类型。

2、新增分区表

ALTER TABLE range_example ADD PARTITION part_20171101 VALUES LESS THAN (TO_DATE('2017-11-01 00:00:00','yyyy-mm-dd hh24:mi:ss'));

3、删除分区表

ALTER TABLE range_example DROP PARTITION part_20171103;

4、查看分区表记录数

1,先生成各个分区的查询语句:
select 'select count(*) from TABLENAME partition('||partition_name||');' from (select * from user_tab_partitions where table_name='TABLENAME');
2,然后:
select (select count(*) from TABLENAME partition(PART1)) p1,
(select count(*) from TABLENAME partition(PART2)) p2,
(select count(*) from TABLENAME partition(PART3)) p3,
(select count(*) from TABLENAME partition(PART4)) p4,
(select count(*) from TABLENAME partition(PART5)) p5,
(select count(*) from TABLENAME partition(PART6)) p6,
(select count(*) from TABLENAME partition(PART7)) p7,
(select count(*) from TABLENAME partition(PART8)) p8,
(select count(*) from TABLENAME partition(PART9)) p9,
(select count(*) from TABLENAME partition(PART10)) p10
from dual;

Oracle分区表常见操作的更多相关文章

  1. ORACLE分区表操作

    ORACLE分区表的操作应用 摘要:在大量业务数据处理的项目中,可以考虑使用分区表来提高应用系统的性能并方便数据管理,本文详细介绍了分区表的使用. 在大型的企业应用或企业级的数据库应用中,要处理的数据 ...

  2. 谈一下如何设计Oracle 分区表

    在谈设计Oracle分区表之间先区分一下分区表和表空间的个概念: 表空间:表空间是一个或多个数据文件的集合,所有数据对象都存放在指定的表空间中,但主要存放表,故称表空间. 分区表:分区致力于解决支持极 ...

  3. 深入学习Oracle分区表及分区索引

    关于分区表和分区索引(About Partitioned Tables and Indexes)对于10gR2而言,基本上可以分成几类: •       Range(范围)分区 •       Has ...

  4. oracle 分区表和分区索引

    很复杂的样子,自己都没有看完,以备后用 http://hi.baidu.com/jsshm/item/cbfed8491d3863ee1e19bc3e ORACLE分区表.分区索引ORACLE对于分区 ...

  5. 谈一下怎样设计Oracle 分区表

    在谈设计Oracle分区表之间先区分一下分区表和表空间的个概念: 表空间:表空间是一个或多个数据文件的集合,全部数据对象都存放在指定的表空间中,但主要存放表,故称表空间. 分区表:分区致力于解决支持极 ...

  6. ORACLE分区表、分区索引详解

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt160 ORACLE分区表.分区索引ORACLE对于分区表方式其实就是将表分段 ...

  7. 【三思笔记】 全面学习Oracle分区表及分区索引

    [三思笔记]全面学习Oracle分区表及分区索引 2008-04-15 关于分区表和分区索引(About PartitionedTables and Indexes) 对于 10gR2 而言,基本上可 ...

  8. oracle分区表有什么作用

    oracle分区表有什么作用 https://zhidao.baidu.com/question/1818955865408544348.html (1) 表空间及分区表的概念 表空间: 是一个或多个 ...

  9. Oracle分区表!

    Oracle 数据库分区表的创建和操作 摘要:在大量业务数据处理的项目中,可以考虑使用分区表来提高应用系统的性能并方便数据管理,本文详细介绍了分区表的使用. 在大型的企业应用或企业级的数据库应用中,要 ...

随机推荐

  1. 关于daterangepicker的配置

    一开始接触daterangepicker搞得思路很乱,慢慢研究才了解一些,下面粘一个daterangepicker的基本配置,代码是来自网上某位大神的.我只是引荐过来的,加入了周和月的汉化. 在回调函 ...

  2. UE4 Sockets多线程TCP通信

    转自:https://blog.csdn.net/zilisen/article/details/75007447 一.简介 UE4引擎是提供了Sockets模块和Networking模块的,博主在研 ...

  3. WebBrowser常用属性方法介绍

    WebBrowser 常用属性方法 ■■方法 ==============================  ▲GoBack    相当于IE的"后退"按钮,使你在当前历史列表中后 ...

  4. python 实现排序算法(二)-合并排序(递归法)

    #!/usr/bin/env python2 # -*- coding: utf-8 -*- """ Created on Tue Nov 21 22:28:09 201 ...

  5. MySQL查询表的所有列名,用逗号拼接

    问题场景 在MySQL中,需要以逗号拼接一个表的所有字段 sql语句 SELECT GROUP_CONCAT(COLUMN_NAME SEPARATOR ",") FROM inf ...

  6. 排序算法的python实现

    几个排序算法 几个排序算法 冒泡排序 选择排序 插入排序 快速排序 quick sort 冒泡排序

  7. 《Linux 性能及调优指南》1.6 了解Linux性能指标

    翻译:飞哥 (http://hi.baidu.com/imlidapeng) 版权所有,尊重他人劳动成果,转载时请注明作者和原始出处及本声明. 原文名称:<Linux Performance a ...

  8. sql server与C#中的字符串相等等效写法

    sql server两个字段相等判断默认不区分大小写,并且字符串进行Unicode规范化处理. 等效c#中的相等为s=="字符".ToLower().Normalize(Syste ...

  9. slenium使用鼠标+键盘事件或者双击实现代码

    参考文章: https://www.ibm.com/developerworks/cn/java/j-lo-keyboard/

  10. python学习之----Lambda表达式

    Lambda 表达式本质上就是一个函数,可以作为其他函数的变量使用:也就是说,一个函 数不是定义成f(x, y),而是定义成f(g(x), y),或f(g(x), h(x)) 的形式. Beautif ...