requête pour effacer les anciens messages

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : requête pour effacer les anciens messages

Re: requête pour effacer les anciens messages

par AB » 06 déc. 2012, 20:15

Au passage, je t'encourage vivement à mettre un champ "date_message" au format "datetime" dans ta table message. Les id ne font pas partie du métier de l'application et l'on ne devrait pas avoir à faire de telles requêtes. Et puis un champ datetime t'ouvrirais d'autres possibilités...

Re: requête pour effacer les anciens messages

par benv8nam » 06 déc. 2012, 10:06

Bonjour,

Le DESC est la pour signifier que l'on sélectionne les 10 dernier message. De ce fait on supprime tous les messages qui ne sont pas dans les 10 derniers messages. Ceci suppose que l'id de ta table message soit un auto_increment.

Avec la requête de moogli tu gardes les 10 derniers messages. Après veux tu garder les 10 derniers message de chaque utilisateur ? Ou juste les 10 derniers messages ?

Re: requête pour effacer les anciens messages

par xTG » 06 déc. 2012, 10:01

Pour que le LIMIT ne prenne que les 10 derniers. :)

Re: requête pour effacer les anciens messages

par light86 » 06 déc. 2012, 01:44

bonsoir merci stp pk tu as ajouter desc?
Merci

Re: requête pour effacer les anciens messages

par moogli » 03 déc. 2012, 23:04

salut,


Tu peux par exemple employer une sous requête pour sélectionner les clef primaire qui t’intéresse ou les exclure.

par exemple :
delete from messages where id not in (select id from message order by id desc limit 10)

@+

requête pour effacer les anciens messages

par light86 » 01 déc. 2012, 22:42

Bonsoir à tous le monde voila j'ai une table message qui contient les champs suivants (user ,message) j'aimerais programmer une requête sql qui va me permettre de garder que les 10 derniers messages d'utilsiateur dans la table
Merci