Mysql
 sql >> Base de données >  >> RDS >> Mysql

Performances MySQL, jointure interne, comment éviter l'utilisation de temporaire et de tri de fichiers

Tout d'abord, je remets en question l'utilisation d'une jointure externe étant donné que l'ordre par fonctionne sur les droites, et que les NULL injectés par la jointure gauche risquent de lui faire des ravages.

Quoi qu'il en soit, l'approche la plus simple pour accélérer cette requête serait un index de couverture sur pb.id_brand et pb.brand. Cela permettra à l'ordre d'être évalué « en utilisant l'index » avec la condition de jointure. L'alternative est de trouver un moyen de réduire la taille du résultat intermédiaire transmis au tri.

Néanmoins, la combinaison de jointure externe, de tri et de limite me laisse me demander ce que vous recherchez exactement et s'il n'y aurait pas une meilleure façon d'exprimer la requête elle-même.