第一种 范围分区
1 对表进行单列的范围分区:
这使最为常用也是最简单的方法,具体例子如下:
从emp表中选择全部的纪录如下:
还可以按照分区进行选择:
使用了分区,还可以单独针对指定的分区进行truncate操作:
2 对表进行多列的范围分区:
多列的范围分区主要是基于表中多个列的值的范围对数据进行分区,例如:
第二种 Hash分区:
hash分区最主要的机制是根据hash算法来计算具体某条纪录应该插入到哪个分区中,hash算法中最重要的是hash函数,Oracle中如果你要使用hash分区,只需指定分区的数量即可。建议分区的数量采用2的n次方,这样可以使得各个分区间数据分布更加均匀。
具体例子如下:
怎么样?很方便吧!
第三种 复合分区:
这是一种将前两种分区综合在一起使用的方法,例如:
上面的例子中将雇员表先按照雇佣时间hiredate进行了范围分区,然后再把每个分区分为两个子hash分区。例子中一共将产生6个分区。
第四种 列表分区:
这是Oracle 9i的新特性,有了这种分区使得我们可以方便的按照值来将数据分为更小的片断。
例如:
这里说明一下,列表分区不能有maxvalue,当你试图insert列表中不存在的值的时候,Oracle会拒绝这条纪录(ORA-14400)。
怎么样?看出列表分区很有用了吧?上面列出了Oracle9i中使用分区的四种方法,其中的例子很简单,真正工作中具体使用那种分区方法要参考你的具体需求。
注:例子中使用的e1,e2,e3,e4等是分区名称,emp1,emp2,emp3,emp4等是表空间名称
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-84614/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/35489/viewspace-84614/
1098

被折叠的 条评论
为什么被折叠?



