Hallo!

> Mit Access ist das nur schwer m�dlich, ist halt ne
"Spielzeug-Datenbank" :o)

Access hat einen Assistenten, mit dem meine Oma Duplikate entfernen
kann. ;-)

> Entweder du bastelst dir ein Script das jeden Datensatz nimmt, pr�ft
obs
> einen gleichen gibt und diesen dann l�scht.

Na ja, auch ein Vorschlag, aber doch eher f�r den Sandkasten, oder?

> Eine sehr pragmatische aber schnelle l�sung ist :
>
> - Select Distinct auf den gefragten Table,
>
> - alle daten in einen neuen Table �bernehmen,
>
> - alten Table l�schen.

Die Methode ist einfach, kann aber dazu f�hren, dass die IDs nicht mehr
stimmen. Wenn die ID belanglos ist, dann ist das die schnellste L�sung.

Aber es geht auch mit reinem SQL, wobei das sehr einfach ist, wenn es
egal ist, welcher der Duplikate bleiben darf und welcher verschwinden
muss. In diesem Beispiel wird die h�chste ID beibehalten.

Zun�chst eine Liste der jeweils kleinsten ID der doppelten
Telefonnummern:

Delete   Kunden
Where    ID in
         (
         Select   Min(ID)
         From     Kunden
         Group By Telefonnummer
         Having   Count(Telefonnummer) > 1
         )

Diese Abfrage muss man mehrmals ausf�hren, weil eine Telefonnummer ja
auch mehr als zwei mal auftauchen kann.

Freundliche Gr��e
Joachim van de Bruck






| [aspdedatabase] als [email protected] subscribed
| http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv
| Sie k�nnen sich unter folgender URL an- und abmelden:
| http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedatabase.asp

Antwort per Email an