Oracle的分区技术在某些条件下可以极大的提高查询的性能,所以被广泛采用。从产品上说,分区技术是Oracle企业版中独立收费的一个组件。以下是对于分区及本地索引的一个示例。
首先根据字典表创建一个测试分区表:
SQL> connect eygle/eygle Connected. SQL> create TABLE dbobjs 2 (OBJECT_ID NUMBER NOT NULL, 3 OBJECT_NAME varchar2(128), 4 createD DATE NOT NULL 5 ) 6 PARTITION BY RANGE (createD) 7 (PARTITION dbobjs_06 VALUES LESS THAN (TO_DATE(’01/01/2007’, ’DD/MM/YYYY’)), 8 PARTITION dbobjs_07 VALUES LESS THAN (TO_DATE(’01/01/2008’, ’DD/MM/YYYY’))); Table created. SQL> COL segment_name for a20 SQL> COL PARTITION_NAME for a20 SQL> select segment_name, partition_name, tablespace_name 2 FROM dba_segments 3 where segment_name = ’DBOBJS’; SEGMENT_NAME PARTITION_NAME TABLESPACE_NAME ——————– ——————– —————————— DBOBJS DBOBJS_06 EYGLE DBOBJS DBOBJS_07 EYGLE |
创建一个Local索引,注意这里可以将不同分区的索引指定创建到不同的表空间:
SQL> create INDEX dbobjs_idx ON dbobjs (created) LOCAL 2 (PARTITION dbobjs_06 TABLESPACE users, 3 PARTITION dbobjs_07 TABLESPACE users 4 ); Index created. |
这个子句可以进一步调整为类似:
create INDEX dbobjs_idx ON dbobjs (created) LOCAL (PARTITION dbobjs_06 TABLESPACE users, PARTITION dbobjs_07 TABLESPACE users ) TABLESPACE users; |
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
SQL Server 2005合并联接算法(三)
合并联接本身的速度很快,但如果需要排序操作,选择合并联接就会非常费时。如果数据量很大且能够从现有B树索引中获得预排序的所需数据,合并联接通常是最快的联接算法。
-
创建与维护Oracle分区表和本地索引(三)
Oracle的分区技术在某些条件下可以极大的提高查询的性能,所以被广泛采用。从产品上说,分区技术是Oracle企业版中独立收费的一个组件。以下是对于……
-
创建与维护Oracle分区表和本地索引(二)
Oracle的分区技术在某些条件下可以极大的提高查询的性能,所以被广泛采用。从产品上说,分区技术是Oracle企业版中独立收费的一个组件。