EXPLAIN PLAN
SET statement_id = 'cin0'
FOR SELECT titre, heure_debut
FROM seance s, film f
WHERE s.id_film = f.id_film
AND f.titre='Vertigo';
La clause 'statement_id = 'cin0'' attribue un identifiant
au plan d'exécution de cette requête dans la table
plan_table. Bien entendu chaque requête stockée
dans plan_table doit avoir un identifiant
spécifique.
Plan d'execution
---------------------------------------------------------------------------
0 SELECT STATEMENT
1 NESTED LOOPS
2 TABLE ACCESS FULL SEANCE
3 TABLE ACCESS BY ROWID FILM
4 INDEX UNIQUE SCAN SYS_C004709
Ici, le plan d'exécution est le suivant :
on parcourt en séquence la table SEANCE (ligne 2) ; pour
chaque séance, on accède
à la table FILM par l'index3 (ligne 4),
puis pour chaque ROWID provenant de l'index, on
accède à la table elle-même (ligne 3). Le tout
est effectué dans une boucle imbriquée (ligne 1).
SELECT table_name, index_name FROM user_indexes;