| Scan restreint d'index <<< | Scan d'index systématique | Optimisation des commandes SELECT et autres requêtes >>> | 
| 7.2.11 Comment MySQL optimise les clauses GROUP BY 7.2 Optimisation des commandes SELECT et autres requêtes 7 Optimisation de MySQL Manuel de Référence MySQL 4.1 : Version Française . Scan restreint d'index ->Scan d'index systématique | 7.2.11.2 Scan d'index systématiqueUn scan d'index systématique peut être un scan d'index total, un scan d'intervalle, suivant les conditions. Lorsque les conditions pour faire un scan d'index restreint ne sont pas la, il est toujours possible d'éviter la constitution de tables temporaires pour les requêtes GROUP BY . S'il y a des conditions d'intervalle dans la clause WHERE , cette méthode ne va lire que les clés qui satisfont les conditions. Sinon, elle appliquera un scan d'index. Comme cette méthode lit toutes les clés de chaque intervalle définit par WHERE , ou scanne tout l'index s'il n'y a pas de condition d'intervalles, nous l'appelons un ``scan d'index systématique''. Notez qu'avec un scan d'index systématique, les opérations de regroupement sont faites après la lecture des clés qui satisfont les conditions.Pour que cette méthode fonctionne, il suffit que toutes les colonnes d'une requête qui fasse référence à une partie de clé avant ou entre les conditions de la clause GROUP BY , soient des conditions constantes. Ces constantes remplissent les ``trous'' dans les clés de recherche, pour qu'il soit possible de former des préfixes comlets d'index. Ensuite, ces préfixes seront utilisés pour les recherches. Si vous avez besoin de tri avec GROUP BY , et qu'il est possible de former des clés de recherche avec des préfixes d'index, MySQL pourra aussi éviter le tri, car la recherche avec préfixe dans un index ordonnés lit les clés dans l'ordre. Les requêtes suivantes ne fonctionneront pas avec la première méthode, mais fonctionneront toujours avec la deuxième méthode d'accès aux index (en supposant que nous avons l'index idx sur la table table t1 ) : 
 | 
| << | Scan d'index systématique | >> | 
| Scan restreint d'index | Comment MySQL optimise les clauses GROUP BY | Optimisation des commandes SELECT et autres requêtes |