[sql] supprimer lignes en fonction de la date

DaRenzo -  
 A.Nonymous -
Bonjour,

Après une journée de recherches infructueuses, y aurait-t-il un cerveau capable de m'indiquer le chemin à suivre pour solutionner ce problème?

J'ai une base de données qui contient plusieurs colonnes dont une "date".
Pour éviter une surcharge de ma base de données, je souhaite pouvoir éliminer les lignes qui possèdent une date antérieure à par exemple 1 mois.

Ma logique voudrait qu'en combinant GETDATE() avec un GETDATE()-30 par exemple, ça pourrait fonctionner mais en vain...

y a-t-il quelqu'un pour m''éclairer??

Merci d'avance

A voir également:

2 réponses

A.Nonymous
 
Pourquoi ne pas simplement faire :
DELETE * FROM historique WHERE date_hist < CURDATE() - INTERVAL 10 DAY
?
1
DaRenzo
 
Bon... j'avance lentement...
j'en suis ici...
$sql = "DELETE * FROM historique WHERE date_hist IN (SELECT * FROM historique WHERE date_hist <= CURRENT_DATE - INTERVAL 10 DAY)";

mais cela ne fonctionne pas...
le requête SELECT fonctionne pourtant...
Quelqu'un pour me dire où se trouve l'erreur? j'ai également essayé EXISTS mais pas de résultats...

merci d'avance.
0