oracle学习笔记-分区表-(9)

来源:互联网 发布:怎么搭建数据库服务器 编辑:程序博客网 时间:2024/04/29 18:15
        将表、索引等数据库对象划分为小的可管理片段的技术,以提高大型表的访问效率。这些分区之间具有相同的逻辑结构。
1、 范围分区
        按照某个列和几个列的值的范围来创建分区。
        范围分区的原则是:数据应尽可能均匀的分布在各个分区中。

        创建分区表的语句如下:


        PARTITION BYRANGE指定分区的类型为范围分区,在括号中指定一个列或多个列。在随后的PARTITION子句中指定每个分区的属性,若不指定名称,数据库将自动指定;“VALUE LESS THAN”指定分区的上界;可加TABLESPACE子句,指定该分区所在表空间。

       进行查询时可以指定在哪个分区表上查询,若不指定则查询整个表中的数据:

SQL>select * frombuss_order PARTITION(name2);

2、 列表分区

        范围分区适合数字型或者日期型的数据,对于不能通过范围分区进行划分的,值又相对固定的,可以通过列表分区的方式分区,例如字符串型的数据。

        创建列表分区的语句如下:


3、 散列分区

        无法预测某个列上的变化范围。

        创建语句如下:


4、 复合分区

复合分区指先对表进行范围分区,然后再对每个范围进行列表分区或者散列分区。

语法如下:

PARTITION BY RANGE(COL1)SUBPARTITION BY HASH|LIST (COL2)(PARTITION name1 VALUES LESS THAN(…)(SUBPARTITION name11,SUBPARTITION name12,…)),…



0 0
原创粉丝点击