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

Requête mysql lente, copie dans la table tmp, utilisation de filesort

NULL vs NOT NULL -- Utilisez NOT NULL sauf si vous avez une raison commerciale pour NULL .

Utilisez InnoDB avec la PRIMARY KEY appropriée sur chaque tableau. Ce sera probablement plus rapide.

"Utiliser l'index", là où cela a du sens, aidera certains.

product.categoryid = 4871 n'appartient pas au ON clause pour vendorimport; déplacez-le vers un WHERE clause. (Cela n'accélérera pas les choses.)

Votre requête ne peut pas être optimisée davantage -- elle doit faites tous les JOIN et livrez toutes les lignes.

Mais... Voulez-vous vraiment 3917 lignes de sortie ? Pouvez-vous gérer cela? Peut-être que vous n'en voulez que quelques-uns et que vous pourriez les filtrer pendant le SELECT ? Cela pourrait accélérer les choses.