Bestimmte Datensätze aus mySQL löschen

Hallo!

Ich nutze mySQL und habe 2 Datenbanken und nun möchte ich aus der einen Datenbank alle Datensätze löschen, die _nicht_ in der anderen Datenbank drin stehen. Beide Datenbanken besitzen einen Schlüssel „ID“. Die ID 433785 in der einen DB ist also auch die ID 433785 in der anderen DB. Somit ist glaub ich der richtige Ansatz schonmal da. Aber was kann ich jetzt tun, um nicht mühsam alles einzeln zu löschen? Da gibt es doch sicher einen Trick…

Hallo pyu-ki,

bist Du sicher, dass diese Informationen sich in unterschiedlichen Datenbanken statt in Tabellen befinden?
Wenn es die Tabellen tab1 und tab2 in der gleichen Datenbank sind, lautet das Statement sinngemäß

delete tab1 
 where id not in
 (select id 
 from tab2
 )
;

Ansonsten sorg dafür (über myphpadmin o.ä.), dass die beiden Tabellen in eine Datenbak gelangen.

MfG

Georg V.

Hallo Georg,

ja, du hast recht, ich meinte unterschiedliche Tabellen und nicht Datenbanken. Ich werde das Mittwoch, wenn ich wieder auf der Arbeit bin, gleich mal ausprobieren. Vielen Dank für die Antwort, klingt vielversprechend :smile:

Grüße,
pyuki