Leçon 2 / 8 — Chapitre 7: Index approfondi
Index composite
Un index peut porter sur plusieurs colonnes à la fois — on parle alors d'index composite. L'ordre des colonnes dans sa définition compte énormément.
CREATE INDEX idx_statut_age ON abonnes(statut, age);
Cet index accélère efficacement une requête qui filtre sur statut seul (WHERE statut = 'actif'), ou sur statut et age ensemble (WHERE statut = 'actif' AND age > 25) — la première colonne de l'index reste exploitable seule.
Il n'aide en revanche pas une requête qui filtre uniquement sur age, sans condition sur statut (WHERE age = 25) : l'index est organisé d'abord par statut, puis par age à l'intérieur de chaque valeur de statut — sauter directement à un age précis, sans passer par statut, ne peut pas exploiter cette structure.
À retenir :
- Un index composite
(colonne1, colonne2)accélère les requêtes qui filtrent surcolonne1seule, ou surcolonne1etcolonne2ensemble. - Il n'accélère généralement pas une requête qui filtre uniquement sur
colonne2, sans condition surcolonne1. - L'ordre des colonnes dans un index composite doit refléter l'ordre dans lequel les requêtes réelles filtrent habituellement leurs données.
À vous de jouer : pour une application qui filtre presque toujours d'abord sur age, puis parfois sur statut, dans quel ordre faudrait-il déclarer les colonnes de l'index ?
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 80 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès