Predicate Information (identified by operation id): ---------------------------------------------------
1 - filter("OBJECT_ID"=123)
Note ----- - dynamic sampling used for this statement (level=2)3、创建虚拟索引,数据字典中有这个索引的定义但是并没有实际创建这个索引段 ZX@orcl> set autotrace off ZX@orcl> create index idx_virtual on test_t (object_id) nosegment;
Index created.
ZX@orcl> select object_name,object_type from user_objects where object_name="IDX_VIRTUAL";
OBJECT_NAME OBJECT_TYPE -------------------------------------------------------------------------------------------------------------------------------- ------------------- IDX_VIRTUAL INDEX
ZX@orcl> select segment_name,tablespace_name from user_segments where segment_name="IDX_VIRTUAL";
no rows selected4、再次查看执行计划 ZX@orcl> set autotrace traceonly explain ZX@orcl> select object_name from test_t where object_id=123;
Execution Plan ---------------------------------------------------------- Plan hash value: 2946757696
Session altered.6、再次查看执行计划,可以看到执行计划选择了虚拟索引,而且时间也缩短了。 ZX@orcl> select object_name from test_t where object_id=123;
Execution Plan ---------------------------------------------------------- Plan hash value: 1533029720
------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 14 | 1106 | 5 (0)| 00:00:01 | | 1 | TABLE ACCESS BY INDEX ROWID| TEST_T | 14 | 1106 | 5 (0)| 00:00:01 | |* 2 | INDEX RANGE SCAN | IDX_VIRTUAL | 315 | | 1 (0)| 00:00:01 | -------------------------------------------------------------------------------------------
Predicate Information (identified by operation id): ---------------------------------------------------
2 - access("OBJECT_ID"=123)
Note ----- - dynamic sampling used for this statement (level=2)从上面的执行计划可以看出创建这个索引会起到优化的效果,这个功能在大表建联合索引优化能起到很好的做作用,可以测试多个列组合哪个组合效果最好,而不需要实际每个组合都创建一个大索引。 7、删除虚拟索引 ZX@orcl> drop index idx_virtual;
Index dropped.MOS文档:Virtual Indexes (文档 ID 1401046.1)更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12本文永久更新链接地址