Bonjour,

Tout est dans le titre... En effet il faut absolument que je modifie ma requête SQL suivante par une requête qui fasse exactement la même chose mais sans utiliser de NOT IN dans un souci de rapidité d'exécution...

Voici ma requête :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
INSERT INTO {cashback_points_history} (uid,act,actionid,credit,debit,timestamp,validated,taken) 
    SELECT mavi.uid, 'Transaction', mat.actionid, mat.amount, 0, maa.timestamp, mat.validated , 0 
      FROM {ma_transaction} mat
        INNER JOIN {ma_action} maa ON (mat.actionid = maa.actionid)
        INNER JOIN {ma_visit} mav ON (maa.visitid = mav.visitid)
        INNER JOIN {ma_visitor} mavi ON (mav.visitorid = mavi.visitorid)
      WHERE mat.actionid NOT IN (SELECT actionid FROM {cashback_points_history})
Je ne sais pas du tout comment faire autrement... Des idées ?


Merci d'avance