Recherche de doublon #MySQL - 1 oct 2012

Programmation

Il y a quelques semaines de cela je me suis arraché les cheveux pour une requête SQL qui consommait trop les ressources du serveur. Au final c’est moi qui m’y prenait vraiment mal, la solution est toute simple et n’a vraiment rien de compliquée. Il suffit de faire deux requêtes SQL distinctes.

Première

SELECT nom,prenom,tel,gsm,adresse,birth, COUNT(idcontact) 
    	  
    	  from contact WHERE ville = '$ville' 
    	  
    	  GROUP BY nom,prenom,adresse HAVING COUNT(idcontact) > 1;

Ensuite il suffit de passer ce résultat dans un foreach et de faire une deuxième requête sur le nom et le prénom.

Deuxième requête

SELECT nom,prenom,tel,gsm,adresse,birth,
    	  
    	  from contact WHERE ville = '$ville' 
    	  
          AND nom = $nom

          AND prenom = $prenom;

Et voila il ne vous reste plus qu’a transformer le résultat. Je ne suis pas du tout pédagogue si mes articles techniques manque d’explication et je pense que c’est le cas n’hésitez pas à poster un commentaire pour me le dire.

J’avoue avoir un peu honte, car sérieusement c’est tout simple. Le fait est quand on passe la majeure partie de son temps à coder avec des ou à faire des requêtes qui ne nécéssite pas plus que des WHERE, on en perd son SQL.

Stop Acta





Laisser un commentaire

  1. Eric

    Tu dois même pouvoir faire un GROUP CONCAT sur les id pour avoir toutes les infos qu’il te faut en une requête ;)