查询分区名称、表空间的SQL

USER_SEGMENTS
SELECT SEGMENT_NAME,PARTITION_NAME,TABLESPACE_NAME FROM USER_SEGMENTS;

1、范围分区(range)

范围分区指的是通过某一字段的范围进行分区,比如说以日期范围进行分区为2013、2014、2015年表,或者以id的数字大小进行分区

用法:
--创建一个以id分区的分区表test_calc
Create table test_calc
(
id number(6),
create_time date dafault sysdate
)partition by range(id)(
partition part_1 values less than (0) tablespace space_1,
partition part_2 values less than (maxvalue) tablespace space_2
);
--插入数据
Insert into test_calc(id) values(-1); --插入part_1
Insert into test_calc(id) values(10); --插入part_2 查看整个分区表时还会和查看普通表一样,只不过会查看part_1和part_2两个分区的内容
Select * from test_calc;
单独查看part_1分区
Select * from test_calc partition(part_1); --只有1对应的数据,没有10那一行

2、散列分区(hash)

散列分区指的是通过对某一字段进行散列分布(hash)进行分区,比如对id字段的数字求模,两个分区就是以2为模进行分布

用法:
--创建一个以id分区的分区表test_calc
Create table test_calc
(
id number(6),
create_time date dafault sysdate
)partition by hash(id)(
partition part_1 tablespace space_1 ,
partition part_2 tablespace space_2
);
--另一种形式:自动生成分区部门partition_name的名字
Create table test_calc
(
id number(6),
create_time date dafault sysdate
)partition by hash(id)
partitions 2
store in(space_1,space_2) ; --插入数据
Insert into test_calc(id) values(1);
Insert into test_calc(id) values(2);
Insert into test_calc(id) values(3);
Insert into test_calc(id) values(4);
插入数据之后就会自动调用hash处理方法去处理,最后呈现的结果一定是两个分区各自一半一半 ***散列分区的好处就是每个分区的数据量大致相同***

3、列表分区(list)

如果说分区字段并不是有一定范围或者数值就是某几个特定的值的情况的话,比如id就是1,2,3,4三个值,那么列表分区就是不二的选择

用法:
--创建一个以id分区的分区表test_calc
Create table test_calc
(
id number(6),
create_time date dafault sysdate
)partition by list(id)(
partition part_1 values(1,3) tablespace space_1 ,
partition part_2 values(2,4) tablespace space_2
); --插入数据
Insert into test_calc(id) values(1); --插入part_1
Insert into test_calc(id) values(2); --插入part_2
Insert into test_calc(id) values(3); --插入part_1 Insert into test_calc(id) values(4); --插入part_2

4、组合范围散列分区(range-hash)

先进行范围分区(range)形成几个父分区,再在这几个父分区上进行散列分区(hash)形成几个小的子分区的形式

用法:
--创建一个以id分区的分区表test_calc
Create table test_calc
(
id number(6),
create_time date dafault sysdate
)partition by range(id)
subpartition by hash(id)
(
partition p_1 values less than (0)(
subpartition p_1_1 tablespace space_1,
subpartition p_1_2 tablespace space_2
) ,
partition p_2 values less than (maxvalue)(
subpartition p_2_1 tablespace space_1,
subpartition p_2_2 tablespace space_2
) , );
--相当于分割为两个大的分区,又在两个大的分区上面分别分割了两个小的分区,一共四个分区 分别是:p_1_1、p_1_2、p_2_1、p_2_2

5、组合范围列表分区(range-hash)

先进行范围分区(range)形成几个父分区,再在这几个父分区上进行列表分区(list)形成几个小的子分区的形式

用法:
--创建一个以id分区的分区表test_calc
Create table test_calc
(
id number(6),
create_time date dafault sysdate
)partition by range(id)
subpartition by list(id)
(
partition p_1 values less than (0)(
subpartition p_1_1 values(-1,-2) tablespace space_1,
subpartition p_1_2 values(1,2) tablespace space_2
) ,
partition p_2 values less than (maxvalue)(
subpartition p_2_1 values(-1,-2) tablespace space_1,
subpartition p_2_2 values(1,2) tablespace space_2
) , );
--相当于分割为两个大的分区,又在两个大的分区上面分别分割了两个小的分区,一共四个分区 分别是:p_1_1、p_1_2、p_2_1、p_2_2

Oracle分区知识的更多相关文章

  1. Oracle体系结构之Oracle分区

    目录 Oracle分区 0 一.Oracle分区理论知识 1 二.分区表的实现方式 1 1.范围分区(range partition table) 1 2.列表分区(list partitioning ...

  2. Oracle 数据库知识汇总篇

    Oracle 数据库知识汇总篇(更新中..) 1.安装部署篇 2.管理维护篇 3.数据迁移篇 4.故障处理篇 5.性能调优篇 6.SQL PL/SQL篇 7.考试认证篇 8.原理体系篇 9.架构设计篇 ...

  3. ORACLE 分区

    在建设数据仓库过程中,经常会有大量数据,短时间内表中数据量有限,查询性能还可以,但随着时间的延长,表中数据量迅速增加,查询速度就会变慢,性能下降,这时就要考虑对表进行分区. 一.oracle的分区 当 ...

  4. oracle 分区和分区索引

    一.个人理解:建表时一般都会指定在一个表空间上,但是可能随着表空间扩大,查询越来越慢,分区表就是将一个表实际存在不同的表空间,oracle存储分为块,断,表空间.新建一个表,会给表分配指定大小的段,段 ...

  5. 图说Oracle基础知识(一)

    本文主要对Oralce数据库操作的基础知识进行一下梳理,以便进行归纳总结.适用于未使用过Oracle数据库的读者,或需要学习Oracle数据库方面的基础知识.如有不足之处,还请指正. 关于SQL介绍的 ...

  6. Oracle连接知识

    Oracle基本连接知识   登录sys用户或 sysdba用户权限的账号   Sqlplus         建用户 Create user test identified by 12345678 ...

  7. Oracle 基础知识入门

    前记: 近来项目用到Oracle数据库,大学学了点,后面基本忘记得差不多了,虽然基本语法跟sql 差不多,但是oracle知识是非常多的. 这里简单说点基础知识,希望后面补上更多的关于ORacle知识 ...

  8. 01 Oracle分区索引

    Oracle分区索引   索引与表类似,也可以分区: 分区索引分为两类: Locally partitioned index(局部分区索引) Globally partitioned index(全局 ...

  9. Oracle常用知识小总结

    永不放弃,一切皆有可能!!! 只为成功找方法,不为失败找借口! Oracle常用知识小总结 1. 创建自增主键 对于习惯了SQL SERVER的图形化界面操作的SQLer,很长一段时间不用oracle ...

随机推荐

  1. sass安装步骤

    sass 基于Ruby,首先需要安装Ruby.当然也有node-sass,那是另外一种使用方式了.如果能FQ的,就不用看了,主要写给翻不了墙的人用. 1.安装Ruby,ruby下载地址: http:/ ...

  2. IIS7中配置脚本错误解决方案

    同一个项目, 又建另一站点(相同的物理路径,) ,结果出下上图404.0错误, 原来是win7下应用程序池默认的32应用程序属性影响,参考下图,设置为True.        同一个项目, 又建另一站 ...

  3. Deep Learning(深度学习)学习笔记整理系列之(三)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  4. EasyUI easyui-combobox 重复发送请求

    今天在做个EasyUI easyui-combobox 下拉框动态连级的时候发现在选择一个值的时候发送了两次请求,这有点逆天呀~!!反人类~!必须和谐一开始以为是重复绑定了,重新审核了代码 确定没有~ ...

  5. oracle默认的hr用户使用脚本安装

    1 解压到%ORACLE_HOME%/demo/schema/human_resources/目录下 2 在sys或system用户下运行hr_main.sql脚本(运行命令:@%ORACLE_HOM ...

  6. static_cast,const_cast,dynamic_cast,reinterpret_cast

    除非必要,尽量不要对变量进行强制转换.这是因为强制转换是存在风险的,但实际上在某种情况下,转型是必需的. 旧式C转型方式为(type)expression,即由一对小括号加上一个对象名称组成,而这种语 ...

  7. 基于jQuery带标题的图片3D切换焦点图

    今天给大家分享一款基于jQuery带标题的图片3D切换焦点图.这款焦点图适用浏览器:IE8.360.FireFox.Chrome.Safari.Opera.傲游.搜狗.世界之窗. 实现的代码. htm ...

  8. android netty5.0 编译时 java.lang.NoClassDefFoundError: io.netty.channel.nio.NioEventLoopGroup

    android netty5.0 编译时 java.lang.NoClassDefFoundError: io.netty.channel.nio.NioEventLoopGroup 复制netty包 ...

  9. 几篇SIEM文章

    http://infosecnirvana.com/tag/siem-rule-types/ http://www.tripwire.com/state-of-security/security-da ...

  10. Spring Boot的一个测试用例

    package tk.mybatis.springboot.mapper; import org.junit.Assert; import org.junit.Test; import org.jun ...