MySql - DELETE mehrere Tabellen in einer Abfrage

Th3RaZe

Aktiver Benutzer
Beiträge
37
Hallo, ich habe folgende DELETE Operation:

Code:
DELETE a.*,b.* FROM content as a,comments as b WHERE  a.user_id='ffflal-ddddd' and room_id=55

so jetzt ist mein Problem, wie mache ich meine WHERE abfrage, denn das Problem ist, in der Tabelle "comments" kann es einen Eintrag geben oder auch nicht, deshalb kommt ein AND nicht in Frage, mit einem OR aber auch nicht, da er dann davor alles vergisst und alles löscht was bei 3 nicht auf dem Baum sitzt.

Danke.
 
Werbung:
Du suchst CASCADE. Auch wenn es bei 3 nicht auf dem Baum sitzt.

Code:
test=# create table m(id int primary key);
CREATE TABLE
test=*# create table s (m_id int references m on delete cascade);
CREATE TABLE
test=*# insert into m values (1);
INSERT 0 1
test=*# insert into m values (2);
INSERT 0 1
test=*# insert into s values (1);
INSERT 0 1
test=*# insert into s values (1);
INSERT 0 1
test=*# insert into s values (1);
INSERT 0 1
test=*# insert into s values (1);
INSERT 0 1
test=*# insert into s values (2);
INSERT 0 1
test=*# insert into s values (2);
INSERT 0 1
test=*# delete from m where id = 2;
DELETE 1
test=*# select * from s;
 m_id
------
  1
  1
  1
  1
(4 Zeilen)

test=*#
 
Werbung:
Zurück
Oben