| maison  | Hardware  | réseaux  | programmation  | Logiciel  | Dépannage  | systèmes |  
programmation  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Connaissances Informatiques >> programmation >> PHP /MySQL Programmation >> Content
    Comment se débarrasser des doublons dans MySQL
    Si votre table MySQL contient des centaines ou des milliers d' enregistrements, vous ne voulez pas rechercher manuellement à travers chacun de tenter d'identifier les doublons . MySQL n'a pas une seule requête que vous pouvez utiliser pour supprimer les entrées dupliquées dans une table, mais vous pouvez utiliser une combinaison de requêtes et de les exécuter ensemble pour éliminer vos doubles. Même si votre table utilise une clé primaire pour identifier les dossiers , vous pouvez supprimer les doublons en ne sélectionnant pas le champ de clé primaire dans vos requêtes . . Instructions
    1

    de se connecter à votre base de données MySQL et accéder à l' outil de requête
    2

    Entrez la requête suivante:

    CREATE TABLE temp TEMPORAIRE SELECT DISTINCT col1, col2 , col3 dU GROUPE pAR table_name col1, col2 , col3 AYANT COUNT (*) > 1 ;

    Cela crée une table temporaire qui vérifie le tableau fourni par "nom de table " et quand il trouve un enregistrement en double il insère cette double dans la table temporaire , mais seulement une fois . Par exemple, si "nom de table " dispose de trois entrées , " Jim ", " Bob " et " Bob ", le "temp" table aura qu'un seul enregistrement , "Bob ". . Si " col1 " agit comme un champ de clé primaire de la table , ne pas comprendre " col1 " dans la requête et il suffit de sélectionner les deux autres colonnes
    3

    Entrez la requête suivante:

    DELETE FROM table_name WHERE ( col1, col2 , col3 ) IN ( SELECT col1, col2 , col3 dE temp) ;

    Cette requête vérifie chaque enregistrement de " table" et supprime tous les enregistrements qui ont des doublons , y compris l'original . Par exemple, si le tableau comporte trois entrées , " Jim ", " Bob " et " Bob ", la requête va supprimer les deux " " dossiers , ne laissant que " Bob Jim" dans "nom de table " . Encore une fois, enlever les références à " col1 " dans la requête si " col1 " est le champ de clé primaire
    4

    Entrez la requête suivante: .

    INSERT INTO nom_table ( col1 , col2, col3 ) SELECT col1, col2 , col3 dE temp;

    Cette requête copie quasi-totalité des enregistrements de la table temporaire et insère à nouveau dans "nom de table ". Si à ce stade "nom de table " ne dispose que "Jim" et "temp" ne dispose que "Bob ", après la requête, " table" aura "Jim" et enregistre "Bob" tandis que la table temporaire est supprimé . N'oubliez pas de supprimer les références " col1 " s'il s'agit d'une clé primaire.
    5

    exécuter toutes les requêtes.

    Previous :

    next :
      articles connexes
    ·PHP différence entre require_once et include_once 
    ·Comment faire de plusieurs espaces consécutifs dans PH…
    ·Comment utiliser les sessions PHP 
    ·Comment insérer un MetaTag en PHP 
    ·Qu'est ce qu'un fichier PHP 
    ·Comment faire pour intégrer MySQL dans Visual C 
    ·Comment importer des fichiers MySQL FTM 
    ·Comment insérer une clé auto- numérique en PHP 
    ·Comment faire pour installer Ubuntu Snort Sans MySQL 
    ·Comment trouver le numéro d'indice d'un élément en P…
      articles en vedette
    ·Comment écrire un tableau dans un fichier dans Visual …
    ·Injection MySQL Tutorial 
    ·Comment convertir Exe à Au3 
    ·Comment insérer et enlever gauche et droite tableaux J…
    ·Comment Sortie de Visual C 
    ·Liste des onglets dans le classeur 
    ·ConnectException : Connection refused sur Java 
    ·Comment écrire un Informix SQL Query 
    ·Comment faire pour ajouter à include_path 
    ·Comment débogage dans Visual Studio NET 
    Copyright © Connaissances Informatiques http://fr.wingwit.com