Un plan d’exécution décrit comment Oracle va traiter une requête.

Déterminé par l’optimiseur après analyse de la requête.

Affichage avec EXPLAIN PLAN :

EXPLAIN PLAN FOR
SELECT * FROM clients WHERE nom = 'Dupont';
 
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);

Exemple de plan

---------------------------------------------------------------
| Id | Operation         | Name             | Rows | Cost |
---------------------------------------------------------------
|  0 | SELECT STATEMENT  |                  |    1 |    2 |
|  1 |  TABLE ACCESS BY INDEX ROWID | CLIENTS |    1 |    2 |
|  2 |   INDEX RANGE SCAN | IDX_CLIENTS_NOM |    1 |    1 |
---------------------------------------------------------------

Lecture de bas en haut : INDEX RANGE SCAN puis TABLE ACCESS BY INDEX ROWID.

Cost : estimation du coût par l’optimiseur (plus c’est bas, mieux c’est).