Bonjour,
Voila question toute bete :
Comment faire une requete pour faire apparaitre uniquement les doublons d'une table ?
Merci...
Bonjour,
Voila question toute bete :
Comment faire une requete pour faire apparaitre uniquement les doublons d'une table ?
Merci...
Les doublons d'une table ???? pas tellement normalisé ca !!!
Normalement il n'y a pas de doublons dans une table (ca veut dire qu'il n'y a pas d'unicité de données).
Tu veux parler de doublons dans une colonne?
Dans ce cas,
J'espere que ca va t'aider
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SELECT <colonne> FROM <Table> GROUP BY <colonne> HAVING (count(*)=2)
Bon Courage
heu oui oui les doublons d'une table...
Merci, je vais regarder ca...
Bon et bien ca ne fonctionne pas, quand je met ca :
Ca me donne la meme chose qu'un select distinct..., c'est à dire l'inverse que ce que je veux.SELECT nom
FROM adherent
GROUP BY nom
HAVING (count(*));
Je veux faire apparaitre uniquement les lignes de ma table ou les noms sont en doublons...
Quand à ton HAVING (count(*)=2) à quoi sert il ?
Tu peux preciser ton SGBD ?
Explication
Si tu crées cette requete :
Ton SGBD va te retourner quelque chose dans ce genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT count(*), nom FROM adherent GROUP BY nom
Toi tu aimerais recuperer TUTU car ton SGBD a denombré 2 enregistrements (=doublon)
COUNT(*) | NOM
----------------------
1 | TOTO
2 | TUTU
1 | TATA
1 | TITI
Mais tu ne peux pas faire
La seule solution est de passer par un Having
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 WHERE count(*) = 2
voila,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 HAVING (count(*)=2)
J'espere avoir été limpide
Bon courage
salut,
au cas ou ce sont plus que des doublons (des triplets par ex),
tu modifie ainsi :
mais la requete donnée ne fonctionne que si une des colonnes de ta table posséde ded doublons
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 HAVING (count(*)>=2)
bon courage
Michel
Envoyé par Cybher
C'etait bien la question posée
Ah ok le 2 etait le nombre d'enregistrement...
Merci ca amrche nickel maintenant avec cette requete :
SELECT count(*), nom
FROM adherent
GROUP BY nom
HAVING (count(*)>=2);
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager