Seite 1 von 1

[Gelöst] DELETE mit INNER JOIN??!!

Verfasst: So 10. Apr 2016, 19:50
von Grafino
Hi,

ich stehe gerade bei SQL ein wenig auf dem Schlauch :oops: :

Ich habe zwei Tabellen in einer DB: "Reporttbl" mit den unter anderem sen Spalten "Von" und "Nach" und als Referenz die Tabelle "Loeschentbl" mit "Nummer" und "Name".
Die Aufgabe:
Aus der Tabelle "Reporttbl" sollen alle Datensätze gelöscht werden, in denen einmal in Spalte "Von" und zum andern in Spalte "Nach" alle Nummern aus der "Loeschentbl.Nummer" stehen.
Mein letzter Versuch:
DELETE FROM "Reporttbl" WHERE "Nach" = INNER JOIN "Loeschentbl.Nummer"
Ich befürchte, das geht nicht ganz so einfach ;-)
Kann mir bite mal jemand auf die Sprünge helfen?

Re: DELETE mit INNER JOIN??!!

Verfasst: So 10. Apr 2016, 20:29
von RobertG
Hallo Grafino,

vielleicht

Code: Alles auswählen

DELETE FROM "Reporttbl" WHERE "Nach" IN (SELECT "Nummer" FROM "Loeschentbl")
?
Oder, wenn sowohl "Nach" als auch "Von" erfüllt sein soll:

Code: Alles auswählen

DELETE FROM "Reporttbl" WHERE "Nach" IN (SELECT "Nummer" FROM "Loeschentbl") AND "Von" IN (SELECT "Nummer" FROM "Loeschentbl")
Gruß

Robert

Re: DELETE mit INNER JOIN??!!

Verfasst: So 10. Apr 2016, 20:45
von Grafino
Danke!

Das bringt mich ein gutes Stück weiter! Hat zumindest in so weit funktioniert, als das die Tabelle jetzt komplett leer ist! :lol:
Jetzt suche ich mal, warum!

Aber zumindest ist mir die Synthax jetzt um einiges klarer!

Nachtrag: Der zweite Versuch hat, warum auch immer, besser geklappt!