Tach!
nun habe ich doch noch eine Lösung gefunden.
Übrigens, die erste Lösung, die du fandest, war von jemandem, der nicht gerade für fachliche Kompetenz bekannt war. Jedenfalls, wenn beim Abfragen mit DISTINCT auch die (eindeutige) ID in der Ergebnismenge ist, dann können keine doppelten Datensätze gefunden werden. Um Dopplungen zu finden kann man nur gruppieren und zählen oder das schon erwähnte Self-Joinen verwenden.
Für diejenigen die es interessiert:
Delete
FROM [myTable]
WHERE id NOT IN
(
SELECT MAX(id)
FROM [myTable]
GROUP BY name)
Das setzt voraus, dass wirklich jeder Datensatz doppelt enthalten ist (oder dreifach oder vierfach - dann muss man es mehrfach ausführen, um auf einfach zu kommen). Ansonsten findet das MAX(id) auch einen nur einzeln vorhandenen Datensatz. Für deinen Fall mag das genau passend sein, ich erwähn das nur mal, falls jemand mit einem anders gelagerten Fall diese Lösung findet.
dedlfix.