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 :

[Ligne doublon] Elimination


Sujet :

Requêtes MySQL

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 37
    Points : 24
    Points
    24
    Par défaut [Ligne doublon] Elimination
    Bonjour à tous,
    J'ai deux lignes exactement identiques sur une table. Tous les champs sont égaux. Je veux en éliminer une des deux. Comment faire ??? Une solution est d'éliminer les deux lignes puis d'en recreer une, mais c'est un peu violent qd même ...
    @+

  2. #2
    Membre habitué Avatar de meufeu
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    355
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 355
    Points : 166
    Points
    166
    Par défaut
    pas très clair ton problème, qu'est ce qui t'empeche d'en supprimer qu'une des deux ?

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 37
    Points : 24
    Points
    24
    Par défaut
    Je n'ai aucun critère de sélection sur les champs ...

  4. #4
    Membre à l'essai
    Inscrit en
    Mai 2004
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 13
    Points : 11
    Points
    11
    Par défaut
    Puisque rien ne diffère de tes deux lignes, le mieu est la méthode bourrin mais efficace : tu supprimes les 2 et t'en recréé une.

    Mais au fait, tes deux lignes ont-elles le même identifiant aussi ???

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 37
    Points : 24
    Points
    24
    Par défaut
    C'est ce que je pense faire aussi ... Et oui le même identifiant... Il n'y a pas eu de contrainte d'unicité sur l'identifiant à l'époque où cette table a été créée ... C'est pas bô du tout !

  6. #6
    Membre habitué Avatar de meufeu
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    355
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 355
    Points : 166
    Points
    166
    Par défaut
    Ah ouais carrément

    Je crois qu'il serait bon que tu te concentre sur la source du problème : comment est ce possible (dans ton appli) que tu puisse avoir deux enregistrements pareils ?

    Tu as pas de cleff primaire ?

  7. #7
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 37
    Points : 24
    Points
    24
    Par défaut
    Comment est ce possible ? Il y a des gens qui font n'importent quoi et qui mériteraient une palme d'or. Je suis en train de remettre d'équerre et blinder cette appli ... Première mission : grand nettoyage de printemps dans les tables tout en cherchant à comprendre l'origine des doublons !!!
    Sacré taf

  8. #8
    Membre expert
    Avatar de Alexandre T
    Homme Profil pro
    Chef de projets AMO
    Inscrit en
    Mai 2002
    Messages
    1 213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projets AMO
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 213
    Points : 3 001
    Points
    3 001
    Par défaut
    En limitant à une suppression, tu peux le faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    DELETE ma_table where ma_clef = XXX LIMIT 1
    Mais tu devras lancer une requête par doublon. Ceci sera long.
    Alexandre Tranchant
    Chef de projet AMO pour le Cerema.
    Retrouvez mes articles sur PHP et Symfony

  9. #9
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 37
    Points : 24
    Points
    24
    Par défaut [ Résolu ][Doublon]
    Voilà, c'est joli ça !
    Avec un petit script pour automatiser tout ça ...

  10. #10
    Membre habitué Avatar de dor_boucle
    Inscrit en
    Juin 2003
    Messages
    147
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 147
    Points : 136
    Points
    136
    Par défaut
    euh... quelqu'un pourrait me confirmer que ce genre de requete ne supprime qu'une seule ligne si et seulement si il y en a 2 ?
    car j'aurai plutot tendance à dire que ca supprime tout, et ca laisse juste un exemplaire des ligne ou il y a un doublon....
    J'ai l'impression d'engager un combat sans précédent avec la nature. Je vais bien, le moral est bon, je poursuis le vol. (Youri Gagarine)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2003] Supprimer ligne doublon
    Par xoum89 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 07/07/2010, 13h00
  2. Réponses: 7
    Dernier message: 02/07/2009, 12h20
  3. Comment sélectionner que les lignes doublons
    Par Inconnu_du_69 dans le forum Langage SQL
    Réponses: 20
    Dernier message: 12/02/2009, 17h18
  4. Réponses: 3
    Dernier message: 19/10/2007, 00h38
  5. [Conception] Supprimer des lignes doublons.
    Par elkion dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 07/12/2006, 19h04

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