sql >> Database teknologi >  >> RDS >> Mysql

Sletning af poster ældre end en måned/30 dage

DELETE FROM archive
WHERE STR_TO_DATE(SUBSTR(created_date, 0, 25), '%a, %d %b %Y %H:%i:%S') <
      DATE_SUB(NOW(), INTERVAL 30 DAY);

Du kan derefter fjerne PHP-koden til at beregne datointervallet og lade MySQL håndtere det for dig.

Hvis du har kontrol over databasestrukturen, vil det være meget mere effektivt at gemme datoen i et DATETIME-felt i stedet for at kalde STR_TO_DATE på hver databaserække.



  1. Sådan finder du alle afhængigheder af en tabel i sql server

  2. Hvordan indstilles Collation i MySQL-databasen med Django 2.* mysqlclient?

  3. xampp mysql Kunne ikke initialisere multimasterstrukturer

  4. Forskellen mellem #temptable og ##Temptable?