Services webmasters
Partenaires
Jeux concours gratuits
 
Comment MySQL optimise les clauses ORDER BY
<<<
Comment MySQL optimise la clause LIMIT Vitesse des requêtes INSERT
>>>

5.2 Optimisation des SELECT s et autres requêtes
5 Optimisation de MySQL
 Manuel de Référence MySQL 4.1 : Version Française

Syntaxe de EXPLAIN (Obtenir des informations sur les SELECT )
Mesurer les performances d'une requête
Vitesse des requêtes SELECT
Comment MySQL optimise les clauses WHERE
Comment MySQL optimise la clause DISTINCT
Comment MySQL optimise LEFT JOIN et RIGHT JOIN
Comment MySQL optimise les clauses ORDER BY
->Comment MySQL optimise la clause LIMIT
Vitesse des requêtes INSERT
Vitesses des commandes UPDATE
Rapidité des requêtes DELETE
Autres conseils d'optimisation

5.2.8 Comment MySQL optimise la clause LIMIT

Dans certains cas, MySQL va gérer la requête différemment avec la clause LIMIT # , si la clause HAVING n'est pas utilisée :

  • Si vous ne sélectionnez que quelques lignes avec LIMIT , MySQL va utiliser les index dans certains cas, où il aurait préféré utiliser un scan de table complet.
  • Si vous utilisez LIMIT # avec la clause ORDER BY , MySQL va arrêter de trier dès qu'il a trouvé la première # au lieu de trier toute la table.
  • Lorsque vous combinez LIMIT # avec DISTINCT , MySQL va s'arrêter dès qu'il a trouvé # lignes distinctes.
  • Dans certains cas, la clause GROUP BY peut être appliquée en lisant les clés dans l'ordre (ou en faisant un tri sur la clé), puis en calculant un sommaire, jusqu'à ce que la clé soient modifiée. Dans ce cas, LIMIT # ne va pas appliquer les éléments non nécessaires de la clause GROUP BY s.
  • Aussitôt que MySQL a envoyé les premières # lignes au client, il annule le reste de la requête (si vous n'utilisez pas la fonction SQL_CALC_FOUND_ROWS ).
  • LIMIT 0 va toujours retourner rapidement un résultat vide. C'est pratique pour vérifier une requête et lire les types de colonnes du résultat, sans exécuter réellement la requête.
  • Lorsque le serveur utilise des tables temporaire pour résoudre les requêtes, la clause LIMIT # est utilisée pour calculer l'espace nécessaire.

<< Comment MySQL optimise la clause LIMIT >>
Comment MySQL optimise les clauses ORDER BY Optimisation des SELECT s et autres requêtes Vitesse des requêtes INSERT
Services webmasters
Les manuels
 
CoursPHP.com - Reproduction interdite -