Wählen Sie und Löschen Sie mit einer einzigen Abfrage

Ich habe 2 Tabellen:

  • Benutzer (user_id, user_connected)
  • Zimmer (room_id, room_initiating_user_id, room_target_user_id)

Ich würde gerne alle löschen "Raum" müssen sowohl der initiierende Benutzer und das target_user "user_connected=0"

Habe ich zwei Probleme:

  1. Wie Ziel diese Nutzer?
    Offensichtlich kann diese Abfrage funktioniert nicht:

    SELECT room_id
    FROM rooms,users
    WHERE
    ( 
     (room_target_user_id=user_id) AND (user_connected=0)
    )                   
    AND
    (                
     (room_initiating_user_id=user_id) AND (user_connected=0)
    )
  2. Möchte ich mit der gleichen Abfrage, wenn möglich, löschen Sie diese Zimmer (kein problem, wenn ich eine zweite Abfrage, aber es bedeutet, dass diese Abfrage würde ausgelöst werden, die für jedes Ergebnis, das ist viel. Ist es nicht möglich, löschen Sie diese Zimmer auf einmal?

InformationsquelleAutor Baylock | 2012-05-08

Schreibe einen Kommentar