Afficher seulement les doublons

Résolu
Signaler
Messages postés
10
Date d'inscription
mercredi 1 novembre 2000
Statut
Membre
Dernière intervention
9 août 2005
-
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
-
Bonjour a tous !

Contairement à la fonction DISTINCT j'aimerai afficher seulement les doublons de ma table et non les supprimer .

Comment faut il faire.

merci.

6 réponses

Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
Pour afficher les doublons ayant le numéro identique :



SELECT id,nom,prenom(etc...),COUNT(numero) as nb FROM table GROUP BY numero HAVING nb>1



essaie ça, m'enfin je doute que ça fonctionne, dis-moi quels champs peuvent êtres doublonnés ;-)

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
Salut,



tu peux nous donner la structure de ta table stp, et nous dire si il y
a des doublons, quels champs peuvent être "doublonnés". Merci

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Messages postés
1662
Date d'inscription
lundi 16 septembre 2002
Statut
Membre
Dernière intervention
30 juillet 2008
1
Tu peux faire des subqueries (si ton serveur le supporte).

SELECT ... FROM ... WHERE something NOT IN (SELECT DISTINCT something FROM ... WHERE ...)

, EssayezTestez avant de Poser une question !
http://www.lookstrike.com
Messages postés
10
Date d'inscription
mercredi 1 novembre 2000
Statut
Membre
Dernière intervention
9 août 2005

Voici ma structure :
Tout les champs peuvent etre doublonné sauf bien evidemment 'id'.
C'est une base qui contient 1241 enregistrements et j'aimerai pouvoir verifier si les doublons sont de vrai doublons avant de supprimer.

`id` int(11) NOT NULL auto_increment,
`numero` tinyint(4) NOT NULL default '0',
`nom` varchar(90) NOT NULL default '',
`prenom` varchar(90) NOT NULL default '',
`pays` varchar(50) NOT NULL default '',
`nele` date default NULL,
`lieu` varchar(90) NOT NULL default '',
`taille` varchar(90) NOT NULL default '',
`poids` varchar(90) NOT NULL default '',
`depuis` varchar(90) NOT NULL default '',
`poste` varchar(50) NOT NULL default '',
`club` varchar(50) NOT NULL default '',

Merci
Messages postés
10
Date d'inscription
mercredi 1 novembre 2000
Statut
Membre
Dernière intervention
9 août 2005

Voici exactemnt ce que je voulais ! merci

SELECT *,COUNT(nom) as nb FROM ma_table GROUP BY nom,prenom HAVING nb>1
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
évite le SELECT * et donne le nom de tes champs ;-)

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>