SQL doppelte Tabelle?

2 Antworten

Du kannst dich beim Entfernen der Einträge an der ID sowie der Mitarbeiter_Id orientieren. Die letztgenannte Spalte gibt dir wohl an, ob ein Eintrag im Wert einem anderen entspricht. Die ID kann dir zeigen, ob du gerade das erste Vorkommen vor dir hast oder nicht.

Folgend gehe ich einmal davon aus, dass deine Tabelle mitarbeiter heißt.

DELETE FROM mitarbeiter
USING mitarbeiter, mitarbeiter m
WHERE mitarbeiter.id > m.id AND mitarbeiter.Mitarbeiter_Id = m.Mitarbeiter_Id

Kann sein, dass es funktioniert, wenn du einen rechtsklick auf den Tabellennamen machst und dann auf "oberste 200 Zeilen bearbeiten" klickst. Dann kannst du die Zeilen markieren und auf [entf] drücken.

Wenn niemand mehr doppelt in der Tabelle ist, solltest du die Spalte Mitarbeiter_Id als Primärschlüssel für die Tabelle definieren. Also Tabelle als Entwurf öffnen, die Spalte Mitarbeiter_Id anklicken und oben in der Symbolleiste auf den goldenen Schlüssel klicken und speichern. Dann kannst du keine doppelten Datensätze mehr in die Tabelle einfügen.