Je voudrais réduire le temps de traitement de ma requête SQL (en fait cela dure 10 minutes ...) Je pense que le problème vient des requêtes SQL imbriquées. (désolé pour mon anglais, je suis étudiant français)sql demande trop longtemps ... Comment simplifier?
SELECT DISTINCT `gst.codeAP21`, `gst.email`, `gst.date`, `go.amount`
FROM globe_statistique
JOIN globe_customers ON `gst.codeAP21`=`gc.codeAP21`
JOIN globe_orders ON `gc.ID`=`go.FK_ID_customers`
WHERE `gst.page` = 'send_order'
AND `gst.date` = FROM_UNIXTIME(`go.date`,'%%Y-%%m-%%d')
UNION
SELECT DISTINCT `gst.codeAP21`, `gst.email`, `gst.date`, '-'
FROM globe_statistique
WHERE `gst.page` NOT LIKE 'send_order' "
AND (`gst.codeAP21`,`gst.date`) NOT IN
(SELECT `gst.codeAP21`,`gst.date` FROM globe_statistique
WHERE `gst.page`='send_order');
Merci
Récrire NOT IN LEFT JOIN. Et tester le passage de NOT LIKE à! =. – jarlh
J'essaie de changer NOT LIKE à! = Mais c'est la même chose, mais je supprime la requête imbriquée et cela fonctionne, donc le problème vient de la requête reposée ... Ma table globe_statistique: 56000 lignes – Gabi
Vous voulez dire que le premier SELECT est le lent? – jarlh