This table (and its data) is used in the examples bellow:
Méthodes d'accès : Tables
FULL SCAN
Un FULL SCAN de la table est souvent effectué, par exemple, lorsque
il n'y a pas d'indexes sur les colonnes sélectionnées
et que la clause WHERE ne contient pas de conditions
ou que les conditions sont faites sur des colonnes non indexées.
Le FULL SCAN de la table peut être aussi choisi si Oracle juge que l'utilisation des indexes peut être moins performante ;
c'est le cas lorsque la requête devrait retourner une grande partie ou la totalité des données de la table
ou que les données de la table sont physiquement ordonnées dans un ordre non optimal
ou qu'il y a beaucoup d'espace libre entre les données de la table.
Plan d'exécution :
BY INDEX ROWID
Cette méthode d'accès est choisie lorsqu'un index est utilisé :
pour chaque ligne de l'index (dont les colonnes matchent avec les conditions de sélection) un accès à la table est effectué en utilisant le ROWID.
Plan d'exécution :
Méthodes d'accès : Indexes
UNIQUE SCAN
Cette méthode d'accès est choisie lorsque l'index utilisé est unique (ou index d'une clé primaire).
Plan d'exécution :
RANGE SCAN
Cette méthode d'accès est choisie lorsque l'index utilisé est non-unique et/ou que la condition sur la colonne est faite sur un ensemble de valeurs ;
typiquement en utilisant :
- les opérateurs >, >=, <, <=, BETWEEN.
- l'opérateur = dans le cas d'un index non-unique.
Plan d'exécution :
FULL SCAN
Cette méthode d'accès est choisie dans les cas où les colonnes peuvent être sélectionnées directement de l'indexe.
Plan d'exécution :
FAST FULL SCAN
Cette méthode d'accès est choisie dans les cas où les colonnes sélectionnées font parties d'un indexe et qu'au moins une de ses colonnes a la contrainte NOT NULL.
Plan d'exécution :
SKIP SCAN
Cette méthode d'accès est choisie dans les cas où une condition est faite sur une colonne qui fait partie des colonnes d'un indexe mais qui n'est pas la première colonne de cet indexe.