Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Abfrageoptimierung - "Wo nicht drin" auf sich selbst

So etwas funktioniert möglicherweise schneller, da es nicht die IN-Anweisung verwendet, die möglicherweise immer wieder eine In-Memory-Tabelle durchläuft. Sichern und versuchen

DELETE 
FROM `table` main
WHERE STR_To_DATE( main.Timestamp , '%a %b %d %H:%i:%s CST %Y' )<
  (SELECT  MAX( STR_To_DATE( sub.Timestamp , '%a %b %d %H:%i:%s CST %Y' ) 
   FROM `table` sub
   WHERE sub.Retrieving_User = main.Retrieving_User )
AND main.Retrieving_User = 'userID'