You are here |
blog.tanelpoder.com | ||
| | | |
kerryosborne.oracle-guy.com
|
|
| | | | ||
| | | |
oracle-randolf.blogspot.com
|
|
| | | | When attempting to display only the first n rows of a result set that is ordered the Oracle optimizer offers special optimizations for these... | |
| | | |
tanelpoder.com
|
|
| | | | On Exadata (or when setting cell_offload_plan_display = always on non-Exadata) you may see the storage() predicate in addition to the usual access() and filter() predicates in an execution plan: SQL> SELECT * FROM dual WHERE dummy = 'X'; D - X Check the plan: SQL> @x Display execution plan for last statement for this session from library cache... PLAN_TABLE_OUTPUT ------------------------------------------------------------------------------------------------------------------------ SQL_ID dtjs9v7q7zj1g, child number 0 ------------------------------------- SELECT * FROM dual WHERE dummy = 'X' Plan hash value: 272002086 ------------------------------------------------------------------------ | Id | Operation | Name | E-Rows |E-Bytes| Cost (%CPU)| ------------------------------------------------------------------------ | 0 | SELECT STATEMENT | | | | 2 (100)| |* 1 | TABLE ACCESS STORAGE FULL| DUAL | 1 | 2 | 2 (0)| ------------------------------------------------------------------------ Predicate Information (identified by operation id): --------------------------------------------------- 1 - storage("DUMMY"='X') filter("DUMMY"='X') The access() and filter() predicates come from the corresponding ACCESS_PREDICATES and FILTER_PREDICATES columns in V$SQL_PLAN. But there's no STORAGE_PREDICATES column there! - Linux, Oracle, SQL performance tuning and troubleshooting - consulting & training. | |
| | | |
akorotkov.github.io
|
|
| |