|
[Résolu] DELETE sous SQL |
|
Louis
|
Bonjour à tous
J'ai un fichier "Messages" avec une clé unique ' ID_Message ' et un autre "MessagesLog" avec une clé multi 'ID_Message' et un champ 'Done' (vrai ou faux) pour savoir si le message est traité.
Pour nettoyer les données de MessagesLog je fait un DELETE FROM avec une condition sur le champ 'Done' (valeur 1)
ex. DELETE FROM MessagesLog WHERE MessagesLog.Done = 1
Ou je suis bloqué c'est dans ma requete SQL pour supprimer tous les enregistrements du fichier "Messages" qui ne possedent plus de 'ID_Message' dans le fichier "MessagesLog"
Est-il possible d'utiliser un DELETE FROM Messages WHERE ???? pour tous les ID_Messages qui ne se trouve pas dans MessagesLog.
D'avance merci pour vos réponses.
Louis
Contribution le : 30/04/2006 10:39
Edité par drcharly93 sur 2/5/2006 11:04:01
|
|
|
Re: DELETE sous SQL |
|
Louis
|
Bonjour,
J'ai reçu la solution sur le forum PCSoft.
Pour les personnes qui aurais eventuellement le meme problèmes.
Voici ce qu'il faut fait
DELETE FROM messages WHERE messages.id_message NOT IN(SELECT messageslog.id_message FROM messageslog)
Louis
Contribution le : 01/05/2006 10:03
|
|
Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.