Bonjour à tous,
J'ai besoin de votre aide pour resoudre une requête de suppression de doublons.
En effet, j'ai identifié les doublons de ma table T1 puis les ai stockés dans une autre table dite temporaire (TempDupRows).
Je veux maintenant supprimer ces doublons dans la table de base.
J'ai écris ce code :
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 DELETE T1.* FROM T1 WHERE (T1.Nom+T1.Prénom+T1.CB+T1.[RG]) In ( La requête ayant servie à identifier les doublons ).
Qui est la suivante :
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Select T1.ID, T1.[GPN], T1.Nom, T1.Prénom, T1.CB, T1.SA, T1.BU, T1.OU, T1.MU, T1.SMU, T1.SL, T1.SSL, T1.Loc, T1.RG, T1.DA, T1.DFC, T1.Fte, T1.Motif, T1.ACST FROM T1 WHERE ((( T1.Nom+T1.Prénom+T1.CB+T1.RG) In (SELECT T1.Nom+T1.Prénom+T1.CB+T1.RG FROM T1 GROUP BY T1.Nom+T1.Prénom+T1.[CB] +T1.[RG] HAVING Count(T1.ID)>1 ))));
Sauf que j'ai une erreur :
J'avoue que je ne comprends pas cette erreur.You have written a subquery that can return more than one field without using the EXISTS reserved word in the main query's FROM clause.
Revise the SELECT statement of the subquery to request only only one field.
Merci pour votre aide !
Cdt
Partager