Lukas: mysql5: Delete Frage

Hallo,

ich möchte alle Einträge einer Tabelle löschen, die ich in einer anderen Tabelle nicht finden kann.

Bsp:

Tabelle 1:
ID,Spalte1,Spalte2
1,--,--
2,--,--
3,--,--

Tabelle 2:
Spalte1,Spalte2,ID
bla,bla,1
bla,bla,2
bla,bla,3
bla,bla,4
bla,bla,5

Wie kann ich in in einer Query alle Einträge der Tabelle 2 löschen, die in Tabelle 1 nicht drin sind. (Tabelle1.ID = Tabelle2.ID)

Lukas

  1. Tach!

    Wie kann ich in in einer Query alle Einträge der Tabelle 2 löschen, die in Tabelle 1 nicht drin sind. (Tabelle1.ID = Tabelle2.ID)

    Was brauchst du dazu? Die Menge der ID der Tabelle 1. Die kann man wie ermitteln?

    Und wie formuliert man, dass ein Wert IN einer anderen Menge enthalten sein soll?

    dedlfix.

    1. Tach!

      Wie kann ich in in einer Query alle Einträge der Tabelle 2 löschen, die in Tabelle 1 nicht drin sind. (Tabelle1.ID = Tabelle2.ID)

      Was brauchst du dazu? Die Menge der ID der Tabelle 1. Die kann man wie ermitteln?

      Und wie formuliert man, dass ein Wert IN einer anderen Menge enthalten sein soll?

      Hi,

      DELETE FROM tabelle2 WHERE tab2_id NOT IN (SELECT tab1_id FROM tabelle1);  
      
      

      Danke und Gruß, Lukas

  2. Liebe Mitdenker,
    liebe Wissende,
    liebe Neugierige,

    ja!

    Guckst Du bei Frau Google nach "Ausschlussabfrage" und erhältst z. B.
    http://www.ms-office-forum.net/forum/showthread.php?t=180502

    Spirituelle Grüße
    Euer Robert

    --
    Möge der Forumsgeist wiederbelebt werden!