vendredi 18 octobre 2013

Oracle : Comment connaître les index utilisés par une requête

Pour connaître les index utilisés par une requête, il faut utiliser  l'instruction EXPLAIN PLAN.

EXPLAIN PLAN FOR (SELECT * FROM ma_table  WHERE ma_colonne='iuhuhj');
SELECT PLAN_TABLE_OUTPUT FROM TABLE(dbms_xplan.display());

Ce qui donne le tableau suivant, avec le coût (dernière colonne) de chaque étape :
-------------------------------------------------------------------------------------
| Id  | Operation                   | Name                  | Rows  | Bytes | Cost  |
-------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT            |                       |     1 |   782 |     3 |
|   1 |  TABLE ACCESS BY INDEX ROWID| MA_TABLE              |     1 |   782 |     3 |
|   2 |   INDEX RANGE SCAN          | PK_ID_TABLE           |     1 |       |     2 |

-------------------------------------------------------------------------------------

Aucun commentaire:

Enregistrer un commentaire