Leçon 4 / 8 — Chapitre 7: Index approfondi
Index et ORDER BY : accélérer un tri
Un index n'accélère pas seulement un WHERE : il peut aussi accélérer un ORDER BY portant sur la même colonne, puisqu'un index stocke déjà ses valeurs dans un ordre trié — le moteur SQL peut alors lire directement dans cet ordre, sans effectuer de tri séparé.
CREATE INDEX idx_age ON abonnes(age);
SELECT * FROM abonnes ORDER BY age;
Sans index, trier abonnes par age exige de lire toutes les lignes puis de les trier ensuite. Avec l'index idx_age, le moteur peut directement parcourir l'index dans l'ordre, ce qui évite cette étape de tri séparée.
Cet effet reste spécifique à la colonne réellement indexée : un index sur age n'accélère en rien un ORDER BY email, qui porte sur une colonne différente.
À retenir :
- Un index sur une colonne peut accélérer un
ORDER BYsur cette même colonne, en plus d'unWHERE. - Ce bénéfice ne s'étend pas à une autre colonne que celle indexée.
- Un index composite
(colonne1, colonne2)peut de la même façon accélérer unORDER BY colonne1, colonne2dans cet ordre précis.
À vous de jouer : l'index idx_age de cette leçon accélère-t-il SELECT * FROM abonnes ORDER BY nom; ? Justifiez.
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