| My OracleGuide |
Designing Indexes - Concepts | About Feedback | Products |
Designing Indexes - Concepts
|
|
Index Access Statistics
--- To select TOP 10 Indexes by usage select * FROM( select b.object_owner, b.object_name, sum(a.executions) FROM v$sql a, v$sql_plan b where a.address=b.address and a.hash_value=b.hash_value and b.operation = 'INDEX' GROUP BY b.object_owner, b.object_name ORDER BY sum(a.executions) DESC) WHERE rownum<11; --- To select TOP 10 Indexes with UNIQUE SCANS by usage select * FROM( select b.object_owner, b.object_name FROM v$sql a, v$sql_plan b where a.address=b.address and a.hash_value=b.hash_value and b.operation = 'INDEX' and b.options = 'UNIQUE SCAN' GROUP BY b.object_owner, b.object_name ORDER BY sum(a.executions) DESC) WHERE rownum<11; --- To select TOP 10 Indexes with RANGE SCANS select * FROM( select b.object_owner, b.object_name, sum(a.executions) FROM v$sql a, v$sql_plan b where a.address=b.address and a.hash_value=b.hash_value and b.operation = 'INDEX' and b.options = 'RANGE SCAN' GROUP BY b.object_owner, b.object_name ORDER BY sum(a.executions) DESC) WHERE rownum<11; --- To select TOP 10 Indexes with FULL SCANS select * FROM( select b.object_owner, b.object_name, sum(a.executions) FROM v$sql a, v$sql_plan b where a.address=b.address and a.hash_value=b.hash_value and b.operation = 'INDEX' and b.options = 'FULL SCAN' GROUP BY b.object_owner, b.object_name ORDER BY sum(a.executions) DESC) WHERE rownum<11; --- To select TOP 10 TABLES with ACCESS BY ROWID select * FROM( select b.object_owner, b.object_name, sum(a.executions) FROM v$sql a, v$sql_plan b where a.address=b.address and a.hash_value=b.hash_value and b.operation = 'TABLE ACCESS' and b.options = 'BY ROWID' GROUP BY b.object_owner, b.object_name ORDER BY sum(a.executions) DESC) WHERE rownum<11; --- To select TOP 10 TABLES with FULL SCAN select * FROM( select b.object_owner, b.object_name, sum(a.executions) FROM v$sql a, v$sql_plan b where a.address=b.address and a.hash_value=b.hash_value and b.operation = 'TABLE ACCESS' and b.options = 'FULL' GROUP BY b.object_owner, b.object_name ORDER BY sum(a.executions) DESC) WHERE rownum<11; |