Je cherche la requete permetant de dédoublonner une table mais rapport à
TOUS les champs, c'est à dire un dédoublonnage par rapport à toute
l'occurence.
En clair, je veux aucune occurence de la table identique à une autre à la
fin de la requete.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gilbert
Bonjour,
Sous réserve d'avoir bien interprété ta demande!
Voici un exemple de requête qui te donnera tous les enregistrements qui ont un (ou plusieurs) doublons dans le champ1 ou le champ2 ou le champ3 :
SELECT Table3.numid, Table3.Champ1, Table3.Champ2, Table3.Champ3 FROM Table3 WHERE (((Table3.Champ1) In (SELECT [Champ1] FROM [Table3] As Tmp GROUP BY [Champ1] HAVING Count(*)>1 ))) OR (((Table3.Champ2) In (SELECT [Champ2] FROM [Table3] As Tmp GROUP BY [Champ2] HAVING Count(*)>1 ))) OR (((Table3.Champ3) In (SELECT [Champ3] FROM [Table3] As Tmp GROUP BY [Champ3] HAVING Count(*)>1 ))) ORDER BY Table3.numid;
Voici une requête qui te supprime tous les doublons renvoyés par la requête ci-dessus : Fais une sauvegarde de tes données avant de tester.
DELETE Table3.numid FROM Table3 WHERE (((Table3.numid) In (SELECT Table3.numid FROM Table3 WHERE (((Table3.Champ1) In (SELECT [Champ1] FROM [Table3] As Tmp GROUP BY [Champ1] HAVING Count(*)>1 ))) OR (((Table3.Champ2) In (SELECT [Champ2] FROM [Table3] As Tmp GROUP BY [Champ2] HAVING Count(*)>1 ))) OR (((Table3.Champ3) In (SELECT [Champ3] FROM [Table3] As Tmp GROUP BY [Champ3] HAVING Count(*)>1 ))) ORDER BY Table3.numid, Table3.Champ1;)));
-- Cordialement,
Gilbert
"Franky01" a écrit dans le message de news:
Rerebonjour :)
Je cherche la requete permetant de dédoublonner une table mais rapport à TOUS les champs, c'est à dire un dédoublonnage par rapport à toute l'occurence.
En clair, je veux aucune occurence de la table identique à une autre à la fin de la requete.
Quelle est la requête pour cela ?
Merci !!!
Bonjour,
Sous réserve d'avoir bien interprété ta demande!
Voici un exemple de requête qui te donnera tous les enregistrements qui ont
un (ou plusieurs) doublons dans le champ1 ou le champ2 ou le champ3 :
SELECT Table3.numid, Table3.Champ1, Table3.Champ2, Table3.Champ3
FROM Table3
WHERE (((Table3.Champ1) In (SELECT [Champ1] FROM [Table3] As Tmp GROUP BY
[Champ1] HAVING Count(*)>1 ))) OR (((Table3.Champ2) In (SELECT [Champ2] FROM
[Table3] As Tmp GROUP BY [Champ2] HAVING Count(*)>1 ))) OR (((Table3.Champ3)
In (SELECT [Champ3] FROM [Table3] As Tmp GROUP BY [Champ3] HAVING
Count(*)>1 )))
ORDER BY Table3.numid;
Voici une requête qui te supprime tous les doublons renvoyés par la requête
ci-dessus :
Fais une sauvegarde de tes données avant de tester.
DELETE Table3.numid
FROM Table3
WHERE (((Table3.numid) In (SELECT Table3.numid
FROM Table3
WHERE (((Table3.Champ1) In (SELECT [Champ1] FROM [Table3] As Tmp GROUP BY
[Champ1] HAVING Count(*)>1 ))) OR (((Table3.Champ2) In (SELECT [Champ2] FROM
[Table3] As Tmp GROUP BY [Champ2] HAVING Count(*)>1 ))) OR (((Table3.Champ3)
In (SELECT [Champ3] FROM [Table3] As Tmp GROUP BY [Champ3] HAVING
Count(*)>1 )))
ORDER BY Table3.numid, Table3.Champ1;)));
--
Cordialement,
Gilbert
"Franky01" <Franky01@discussions.microsoft.com> a écrit dans le message de
news:034607A9-08D6-4267-A570-28260BE59971@microsoft.com...
Rerebonjour :)
Je cherche la requete permetant de dédoublonner une table mais rapport à
TOUS les champs, c'est à dire un dédoublonnage par rapport à toute
l'occurence.
En clair, je veux aucune occurence de la table identique à une autre à la
fin de la requete.
Voici un exemple de requête qui te donnera tous les enregistrements qui ont un (ou plusieurs) doublons dans le champ1 ou le champ2 ou le champ3 :
SELECT Table3.numid, Table3.Champ1, Table3.Champ2, Table3.Champ3 FROM Table3 WHERE (((Table3.Champ1) In (SELECT [Champ1] FROM [Table3] As Tmp GROUP BY [Champ1] HAVING Count(*)>1 ))) OR (((Table3.Champ2) In (SELECT [Champ2] FROM [Table3] As Tmp GROUP BY [Champ2] HAVING Count(*)>1 ))) OR (((Table3.Champ3) In (SELECT [Champ3] FROM [Table3] As Tmp GROUP BY [Champ3] HAVING Count(*)>1 ))) ORDER BY Table3.numid;
Voici une requête qui te supprime tous les doublons renvoyés par la requête ci-dessus : Fais une sauvegarde de tes données avant de tester.
DELETE Table3.numid FROM Table3 WHERE (((Table3.numid) In (SELECT Table3.numid FROM Table3 WHERE (((Table3.Champ1) In (SELECT [Champ1] FROM [Table3] As Tmp GROUP BY [Champ1] HAVING Count(*)>1 ))) OR (((Table3.Champ2) In (SELECT [Champ2] FROM [Table3] As Tmp GROUP BY [Champ2] HAVING Count(*)>1 ))) OR (((Table3.Champ3) In (SELECT [Champ3] FROM [Table3] As Tmp GROUP BY [Champ3] HAVING Count(*)>1 ))) ORDER BY Table3.numid, Table3.Champ1;)));
-- Cordialement,
Gilbert
"Franky01" a écrit dans le message de news:
Rerebonjour :)
Je cherche la requete permetant de dédoublonner une table mais rapport à TOUS les champs, c'est à dire un dédoublonnage par rapport à toute l'occurence.
En clair, je veux aucune occurence de la table identique à une autre à la fin de la requete.