oracle表分区实现及查询

oracle表分区实现及查询

目录:

范围分区
列表分区
散列分区
范围-散列分区

范围-列表分区

内容:oracle分区表的创建和查询操作详述

提示:本文使用的表为oracle用户hr下的job_history,创建分区使用的表名均为hr_job_history。

job_history表数据为:

oracle表分区实现及查询_第1张图片

1.范围分区:

范围分区将数据基于指定的范围映射到不同分区,创建表时可以创建同时可以创建分区,当范围变大或想让范围变得更小时,可以添加分区。

(1)根据某个字段值(或者maxvalue)创建分区

创建分区表并插入数据

oracle表分区实现及查询_第2张图片

查询各分区记录

oracle表分区实现及查询_第3张图片

(2)按时间划分

建表分区表并插入数据

oracle表分区实现及查询_第4张图片

查询各分区记录

oracle表分区实现及查询_第5张图片

 

2.列表分区:

该分区的特点是某列的值只有几个,基于这样的特点我们可以采用列表分区。

建表分区表并插入数据

oracle表分区实现及查询_第6张图片

查询各分区记录

oracle表分区实现及查询_第7张图片

 

3.散列分区:

这类分区是在列值上使用散列算法,以确定将行放入哪个分区中。当列的值没有合适的条件时,建议使用散列分区。

散列分区为通过指定分区编号来均匀分布数据的一种分区类型,因为通过在I/O设备上进行散列分区,使得这些分区大小一致。

建表分区表并插入数据

oracle表分区实现及查询_第8张图片

查询各分区记录

oracle表分区实现及查询_第9张图片

 

4.范围-列表分区

这种分区是基于范围分区-列表分区,表首先按某列进行范围分区,然后再按某列进行列表分区,分区之中的分区被称为子分区。

建表分区表并插入数据

oracle表分区实现及查询_第10张图片

 

查询分区01及其子分区,注意分区与子分区的条数是相等的

oracle表分区实现及查询_第11张图片

 查询分区02及其子分区,注意分区与子分区的条数是相等的

oracle表分区实现及查询_第12张图片

查询分区03及其子分区,注意分区与子分区的条数是相等的

oracle表分区实现及查询_第13张图片

5.范围-散列分区

这种分区是基于范围分区和散列分区,表首先按某列进行范围分区,然后再按某列进行散列分区。

建表分区表并插入数据

oracle表分区实现及查询_第14张图片

查询分区01及其子分区,注意分区与子分区的条数是相等的

oracle表分区实现及查询_第15张图片

查询分区02及其子分区,注意分区与子分区的条数是相等的

oracle表分区实现及查询_第16张图片

查询分区03及其子分区,注意分区与子分区的条数是相等的

oracle表分区实现及查询_第17张图片

 

结束。

你可能感兴趣的:(数据库)