Optimisation requête avec jointures
Bonsoir,
J'essaye désespérément d'optimiser une requête avec pas mal de jointures qui me retourne l'erreur #1104 -
Citation:
The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is okay
.
J'ai bien rajouté la commande SET SQL_BIG_SELECTS=1 mais cela prend encore pas mal de temps à l'exécution. J'ai d'ailleurs noté dans un rapport du manager ovh de mon sql privé un problème qui peut peut être améliorer les performances : Jointures effectuée sans utiliser d'index.
Je vous joins un bout de la requête qui déjà me retourne l'erreur, il s'agit de calculer la note moyenne de chaque artiste en fonction de critiques et de sa présence dans le casting :
Code:
1 2 3 4 5 6
| SELECT CAST.idartiste AS idartisteN, AVG( CRIT.note ) AS Moyenne, CAST.type AS typeartiste
FROM table_casting CAST, table_critique CRIT
WHERE CAST.idfilm = CRIT.idarticle
GROUP BY CAST.idartiste
ORDER BY Moyenne DESC
LIMIT 0 , 2000 |
si vous avez une idée sur la façon d'optimiser cela, je suis preneur !
lionel.