MySQL - Eintrag loeschen zwei verschiedene Tabellen dazu abfragen

Warum verwendest du nicht mein SQL das ich dir dazu erstellt habe? Dein DELETE_Statement ist falsch und würde ein Fehler werfen wenn du die Fehlerstufe entsprechend einstellen würdest.

Siehe auch PHP MySQL Debug Queries

Ich war mir noch unsicher weil die Syntax von deinem Beispiel noch fremd fuer mich war, da habe ich mich dann nicht dran getraut aus angst vor lauter neuen Problemen, aber jetzt habe ich es doch geschaft und auch den Code aus deinem beispiel dazu benutzt, danke nochmal fuer die Unterstuetzung.
 
Yaslaw hat natürlich komplett recht. Du musst halt schon seine Query für deine Tabellen entsprechend anpassen:

Aus dem hier:
SQL:
DELETE FROM tabelle1
WHERE id IN (SELECT id FROM tabelle2)

Wird bei dir:
SQL:
DELETE FROM openorders
WHERE ticket IN (SELECT DISTINCT ticket FROM performance)
(Ich habe es noch um DISTINCT ergänzt. Falls ticket in performance ein Unique Key ist, kannst du dir den DISTINCT auch sparen)

Ach ja, noch was: Das ganze Konstrukt nennt sich correlated subquery falls du dir die Syntax mal etwas genauer anschauen willst.
 
Zuletzt bearbeitet von einem Moderator:
Yaslaw hat natürlich komplett recht. Du musst halt schon seine Query für deine Tabellen entsprechend anpassen:

Aus dem hier:
SQL:
DELETE FROM tabelle1
WHERE id IN (SELECT id FROM tabelle2)

Wird bei dir:
SQL:
DELETE FROM openorders
WHERE ticket IN (SELECT DISTINCT ticket FROM performance)
(Ich habe es noch um DISTINCT ergänzt. Falls ticket in performance ein Unique Key ist, kannst du dir den DISTINCT auch sparen)

Ach ja, noch was: Das ganze Konstrukt nennt sich correlated subquery falls du dir die Syntax mal etwas genauer anschauen willst.

danke fuer deine unterstuetzung, ich habe das jetzt auch hinbekommen. Diese Syntax schreibweise war noch etwas neu fuer mich, aber jetzt klappt es soweit.
 
Zuletzt bearbeitet von einem Moderator:
Zurück