doppelte einträge entfernen

helaukoenig

Erfahrenes Mitglied
Ich möchte aus einer Tabelle die doppelten und dreifachen Einträge entfernen, dazu habe ich nach zwei Kriterien gruppiert und zählen lassen. Einfach alle löschen geht ja nicht, da die doppelten Einträge doch einmal erhalten bleiben sollen.

Code:
DELETE FROM hotel WHERE hotel_id IN ( SELECT MIN( hotel_id ) , `hotnr` , `hotname` , `hotort` , `hotplz` 
FROM `hotel` 
GROUP BY `hotname` , `hotplz` 
HAVING COUNT( * ) > 1 )

Das Skript habe ich mir gegoogelt, aber es funz nur teilweise und ich bekomme eine Fehlermeldung in der Nähe von (SELECT MIN ... Wo steckt der Denkfehler? :confused:

Danke schön!
 
Nach IN darf im Subselect nur die hotel_id aufgeführt werden und außerdem stimmen die Klammern nicht.
... ( SELECT MIN( hotel_id ) FROM `hotel` ) ...
EDIT: sorry, mit den Klammern hab ich mich wohl verguckt.
 
Zurück