2010-08-23 6 views
0

Voici un code que je dois enlever occurances double de catid & recid dans le tableau tblcat1_rec, ne laissant que 1 entrée:nombre et retirer vba d'accès en double

mysql = "DELETE FROM tblcat1_rec " 
mysql = mysql & " WHERE ID <> (SELECT Min(ID) AS MinOfID FROM tblcat1_rec AS Dupe " 
mysql = mysql & " WHERE (Dupe.catid = tblcat1_rec.catid) " 
mysql = mysql & " AND (Dupe.recid = tblcat1_rec.recid)); " 
DoCmd.RunSQL mysql 

Je voudrais que le décompte du montant total du nombre total de doublons trouvés dans la colonne "TL" de l'enregistrement qui reste. Ce qui signifierait également, une valeur de 1 pour les enregistrements qui sont déjà uniques.

Répondre

1

Je pense que vous devrez le décomposer en deux parties. Tout d'abord mettre le compte de tous les enregistrements pour chaque catid & recid et ensuite prendre 1 off. Après cela, vous pouvez exécuter l'instruction delete SQL que vous avez ici.

+2

Cela peut être une bonne idée d'emballer le tout dans une transaction pour vous assurer de ne pas obtenir des résultats incohérents. –