Bonjour à tous.
J'aimerais savoir s'il était possible grace à une requete de sortir tout les champs qui était en double dans une table.
Merci
Bonjour à tous.
J'aimerais savoir s'il était possible grace à une requete de sortir tout les champs qui était en double dans une table.
Merci
Qu'entends tu par champs en double ?Envoyé par Phiss
Si ce sont des lignes en double, la requête est simple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 SELECT * FROM matable AS T1 WHERE EXISTS ( SELECT 1 FROM matable AS T2 WHERE T1.col1 = T2.col1 AND T1.colN = T2.colN GROUP BY T2.col1 , T2.colN HAVING COUNT(*) > 1 )
Ce sont pas forcement la totalité de la ligne qui est en double mais seulement un champ d'une ligne qui se retrouve dans plusieurs lignes.
Et moi je veux pouvoir ressortir tout ces doublons.
Tu prends la requête précédente et tu n'utilises que les noms de colonne qui t'intéressent.![]()
Si tu veux les lignes qui ont la colonne A en double ou la colonne B en double, il faudra faire deux requêtes. Mais en même temps, tu sauras où est le doublon...
En simplifiant le problème au max :
(cherchez l'intrus ...)
L'intrus est Toto :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 CREATE TABLE GENS ( id NUMBER (10), Nom VARCHAR2 (32)); INSERT INTO Gens VALUES (1, 'Toto'); INSERT INTO Gens VALUES (2, 'Franck'); INSERT INTO Gens VALUES (3, 'Marcel'); INSERT INTO Gens VALUES (4, 'Toto'); COMMIT;Si le problème est plus complexe, merci de jeter un oeil à l'article de SQLPro, Les doublons.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SQL> SELECT Nom, COUNT(id) 2 FROM Gens 3 GROUP BY Nom 4 HAVING COUNT(id) > 1; NOM COUNT(ID) -------------------------------- ---------- Toto 2
merci à vous deux.
Les deux marche.
Cela me permet de voir la rapidité d'execution sur sql server par rapport à access...
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