Perf issue retour sur r94692 et retour des sous requetes :
* les sous requetes dans un IN sont lentes a cause d'un bug de mysql qui les interprete en correlated queries. Consequence, la sous requete est executee pour chaque ligne de la requete principale, ce qui fait exploser le temps de requete totale, de complexite m*n Reference : https://dev.mysql.com/doc/refman/5.5/en/correlated-subqueries.html http://bugs.mysql.com/bug.php?id=9090 * On peut contourner le bug en emballant la sous-requete dans un (SELECT * FROM(...) AS subquery). Elle redevient uncorrelated, executee une seule fois, et on retrouve la perf mysql attendue, meilleure qu'en rapatriant les resultats dans PHP et en les reinjectant dans la requete principale cf http://stackoverflow.com/questions/6135376/mysql-select-where-field-in-subquery-extremely-slow-why#6157797
Chargement en cours
Veuillez vous inscrire ou vous se connecter pour commenter