Hallo,
ich bin ein DB-Anfänger und habe mit dem Löschen von speziellen Records einer Tabelle ein Problem.
Ich möchte aus einer Tabelle bestimmte Records löschen wenn in einer verlinkten Tabelle (durch FK) der Wert mit einer dort ebefalls verlinkten Tabelle übereinstimmt.
Das muss mit dem integrierten MySQL-Script funktionieren (kein PHP, usw....), ich versuche mein Problem, so gut mir dies möglich ist, zu beschreiben:
TabA: ida, name
TabB: idb, name, fk_ida
TabC: idc, name, fk_idb
Nun sollten die Records der TabC gelöscht werden welche mit TabB durch fk_idb verlinkt sind und deren TabB.ida Wert z.B. gleich 100 ist.
Mit "Konstrukten" wie:
DELETE FROM TabC WHERE TabC.fk_idb IN (SELECT fk_idb FROM TabB WHERE fk_ida = '100');
bin ich leider gescheitert.
Hättet Ihr dafür evtl. eine Idee oder ein Script-Beispiel für mich?
Vielen Dank
LG
DBNovice
ich bin ein DB-Anfänger und habe mit dem Löschen von speziellen Records einer Tabelle ein Problem.
Ich möchte aus einer Tabelle bestimmte Records löschen wenn in einer verlinkten Tabelle (durch FK) der Wert mit einer dort ebefalls verlinkten Tabelle übereinstimmt.
Das muss mit dem integrierten MySQL-Script funktionieren (kein PHP, usw....), ich versuche mein Problem, so gut mir dies möglich ist, zu beschreiben:
TabA: ida, name
TabB: idb, name, fk_ida
TabC: idc, name, fk_idb
Nun sollten die Records der TabC gelöscht werden welche mit TabB durch fk_idb verlinkt sind und deren TabB.ida Wert z.B. gleich 100 ist.
Mit "Konstrukten" wie:
DELETE FROM TabC WHERE TabC.fk_idb IN (SELECT fk_idb FROM TabB WHERE fk_ida = '100');
bin ich leider gescheitert.
Hättet Ihr dafür evtl. eine Idee oder ein Script-Beispiel für mich?
Vielen Dank
LG
DBNovice