IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

Supprimer des enregistrements correspondant à 1 critère dans une autre table


Sujet :

Requêtes MySQL

  1. #1
    Membre régulier
    Inscrit en
    Juillet 2006
    Messages
    232
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Juillet 2006
    Messages : 232
    Points : 79
    Points
    79
    Par défaut Supprimer des enregistrements correspondant à 1 critère dans une autre table
    Bonjour,
    J'ai une table t1 ayant les champs nb,col0, col1,col12,col3 (col0, col1,col12,col3) est une clé primaire et une table t2 avec la structure col0, cle,col1,col12,col3 et je veux faire la chose suivante
    Supprimer tous les enregistrements de T2 qui ont la combinaison col0, col1,col12,col3 identique à celle de T1 avec le champ nb à sa valeur maximale.
    Par exemple si dans T1 on a
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    1	120	0,0052	0,0035	0,0076
    8	120	0,0102	0,005	0,007
    1	122	0,0052	0,0035	0,0076
    4	122	0,0102	0,005	0,007
    1	123	0,0052	99	0,0076
    3	123	0,0102	0,005	0,007
    1	124	0,0052	0,0035	0,0076
    2	124	0,0102	0,005	0,007
    1	124	0,09653	0,0391	0,066
    1	124	0,123729	0,1495	0,0885
    les enregistrements
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    8	120	0,0102	0,005	0,007
     
    4	122	0,0102	0,005	0,007
     
    3	123	0,0102	0,005	0,007
    2	124	0,0102	0,005	0,007
    ont le champ nb maximale, je veux supprimer les champs correspondant dans T2



    Merci d'avance

  2. #2
    Membre averti
    Avatar de diablo-dz
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2014
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2014
    Messages : 75
    Points : 327
    Points
    327
    Par défaut
    boinsoir
    Ta requête elle va ressembler a cette requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    DELETE FROM Table1 where EXISTS (select * from Table1 as a
    inner join table2 as b on a.id=b.id
     );
    Tu peux ajouter pour ton critère pour filtrer les lignes sur la condition voulue tu peu utiliser MAX() avec un Group By
    A+
    Si une réponse vous a permis d'avancer , n'oublie pas de mettre
    Ne pas oublier

  3. #3
    Membre expert
    Avatar de ericd69
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    1 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 919
    Points : 3 295
    Points
    3 295
    Billets dans le blog
    1
    Par défaut
    salut,

    tu peux utiliser un truc du genre:
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    delete from t2 where clef in
    (select clef from t1 inner join t2 on
    t1.col1=t2.col1 and t1.col2=t2.col2 and t1.col3=t2.col3 and t1.col4=t2.col4)
    soyons pensez à mettre quand votre problème est résolu ou à utiliser pour les réponses pertinentes...
    ne posez pas de problématique soi-disant simplifiée sur des problèmes que vous n'êtes pas capable de résoudre par respect pour ceux qui planchent dessus... sinon: et à utiliser pour insérer votre code...

Discussions similaires

  1. Réponses: 1
    Dernier message: 08/12/2014, 22h23
  2. Réponses: 1
    Dernier message: 04/10/2013, 15h40
  3. [AC-2003] Requête de sommation des valeur suivant des critères dans une autre table
    Par s.rais dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 01/06/2010, 19h53
  4. Réponses: 6
    Dernier message: 09/01/2008, 11h56
  5. Réponses: 9
    Dernier message: 27/09/2007, 15h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo