Salut

Je dois optimiser une requête qui actuellement s’exécute en .... 19secondes malgré qu'elle soit très simple.

J'ai du coup fait ma petite requête qui s'exécute en 0.4s ce qui est nettement plus raisonnable seulement voila, je n'ai pas le même nombre de résultats

Je voudrai savoir si quelqu'un pouvait m'expliquer les réelles différences entre ces deux requêtes. Aussi est ce que la mienne peut suffire malgré le moindre retour (l'ancienne fait elle des doublons?)

Bref, place au code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
SELECT * 
FROM cc_inscription 
LEFT JOIN cc_paiement 
ON cc_paiement.inscription_id = cc_inscription.inscription_id 
WHERE cc_inscription.course_id=1 
ORDER BY cc_inscription.inscription_id ASC; 
(4107 records, 19s execution)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
SELECT * 
FROM cc_inscription, cc_paiement 
WHERE cc_paiement.inscription_id = cc_inscription.inscription_id 
AND cc_inscription.course_id=1 
ORDER BY cc_inscription.inscription_id ASC; 
(3780 records, 0.400s)
Si les résultats sont effectivement différents (donc que le LEFT JOIN ne provoque pas de doublons).

Pourriez vous m'indiquer comment je pourrai l'optimiser histoire qu'elle ne fasse pas 19secondes ?

Merci beaucoup !