您的位置:首页 > 数据库 > Oracle

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

2016-09-12 14:43 330 查看
        将表、索引等数据库对象划分为小的可管理片段的技术,以提高大型表的访问效率。这些分区之间具有相同的逻辑结构。
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,…
)
),…
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息