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 :

Elimination des doublons


Sujet :

Requêtes MySQL

  1. #1
    Membre confirmé Avatar de amika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    498
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2004
    Messages : 498
    Points : 464
    Points
    464
    Par défaut Elimination des doublons
    je cherche un script optimisé pour eliminer les doublons dans une table mysql ( + que 3 million de records)

    _____________________
    Il n'y a pas de choses urgentes, il n'y a que des choses en retard

  2. #2
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    Regarde ici, je pense que ça devrait t'aider.
    Pensez au bouton

  3. #3
    Membre confirmé Avatar de amika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    498
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2004
    Messages : 498
    Points : 464
    Points
    464
    Par défaut
    quand j'ai fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    INSERT INTO maTable_tmp (	
    SELECT * FROM   maTable
    GROUP  BY champ1, champ2
    HAVING COUNT(*) > 1 )
    une erreur est survenue
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #1030:Got error 28 from storage engine
    et avec le meme code pour une petite table ca marche bien

    _____________________
    Il n'y a pas de choses urgentes, il n'y a que des choses en retard

  4. #4
    Membre confirmé Avatar de amika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    498
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2004
    Messages : 498
    Points : 464
    Points
    464
    Par défaut
    maTable_tmp contient les doublons

    _____________________
    Il n'y a pas de choses urgentes, il n'y a que des choses en retard

  5. #5
    Membre habitué

    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    145
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 145
    Points : 180
    Points
    180
    Par défaut
    Bonjour,


    comment tu crée ta table temporaire ?

    ton moteur c'est MyIsam ou InnoDB ?

  6. #6
    Membre confirmé Avatar de amika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    498
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2004
    Messages : 498
    Points : 464
    Points
    464
    Par défaut
    la table temporaire au debut est vide et elle a la meme structure que la table originale
    le moteur est MyIsam

    _____________________
    Il n'y a pas de choses urgentes, il n'y a que des choses en retard

  7. #7
    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
    et moi j'ai autre chose comme erreur ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    INSERT INTO t_devis_tmp( 
    SELECT * 
    FROM t_devis
    GROUP BY devis_id_get
    HAVING COUNT( * ) >= 1 ) 
     
    MySQL a répondu:
     
     
    You have an error in your SQL syntax near 'SELECT  * 
    FROM t_devis
    GROUP  BY devis_id_get
    HAVING COUNT(  *  )  >= 1  ) ' at line 2
    Retour

    est ce qu'une methode sql sans imbrication de suppresion des doublons existe pour mysql ?
    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)

  8. #8
    Rédacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Points : 9 716
    Points
    9 716
    Par défaut Re: Elimination des doublons
    Citation Envoyé par nourami
    je cherche un script optimisé pour eliminer les doublons dans une table mysql ( + que 3 million de records)
    Ton problème principal, c'est la taille de ta table.

    Il faudrait peut-être un script du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Pour chaque enregistrement {
        Chercher et éliminer les doublons de l'enregistrement courant
    }
    Cela prendrait plus de temps à s'exécuter, mais éviterait d'exploser ta base à cause d'un nombre important d'enregistrements.

    Sinon, par "script", tu entends "script PHP"?
    "On en a vu poser les armes avant de se tirer une balle dans le pied..."
    -- pydévelop

    Derniers articles:

    (SQL Server) Introduction à la gestion des droits
    (UML) Souplesse et modularité grâce aux Design Patterns
    (UML) Le Pattern Etat
    Autres articles...

  9. #9
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    792
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 792
    Points : 1 206
    Points
    1 206
    Par défaut
    Pas besoin de table temporaire, voir même sujet ici:
    http://www.developpez.net/forums/viewtopic.php?t=414552
    :q :q! :wq :w :w! :wq! :quit :quit! :help help helpquit quit quithelp
    :quitplease :quitnow :leave :shit ^X^C ^C ^D ^Z ^Q QUITDAMMIT
    Jabber: ripat at im.apinc.org

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

Discussions similaires

  1. Elimination des doublons
    Par 1007R2D2 dans le forum Débuter
    Réponses: 6
    Dernier message: 07/06/2009, 10h46
  2. Eliminer des doublons dans un fichier
    Par fennec62 dans le forum Général Python
    Réponses: 13
    Dernier message: 11/01/2009, 11h40
  3. Réponses: 8
    Dernier message: 22/03/2006, 17h16
  4. Elimination des doublons
    Par bilalove dans le forum Oracle
    Réponses: 3
    Dernier message: 11/08/2005, 13h53
  5. Eliminer des Doublon dans une Table
    Par Soulama dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 03/02/2005, 14h27

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