Mit dem Ergebnis einer Abfrage in einer anderen Tabelle suchen

Robert Steichele

Erfahrenes Mitglied
Ich habe zwei Tabellen, in der Zweiten gibt es eine spalte, in welcher Nummern stehen, die alle einzigartig sind. Zu jeder Nummer gehört eine ID, die in der Haupttabelle eine Datensatz kennzeichnet.
Ich möchte jetzt in der zweiten Tabelle nach einer Nummer suchen und mit dem Ergebnis (ID) den entsprechenden Datensatz in der ersten Tabelle ausgeben.

Kann natürlich zwei einzelne Anfragen nacheinander starten, wüsste aber gerne ob das mit einem Abwasch geht.

Gruß
Robert
 
Dazu verwendet man Subqueries (ab Version 4.1):
Code:
SELECT *
FROM Tabelle1
WHERE Tabelle1.id IN (
        SELECT 
          Tabelle2.Tabelle1Id
        FROM Tabelle2
        WHERE Tabelle2.id=[gesuchteID]
    )
Ohne Subqueries geht es auch vor Version 4.1:
Code:
SELECT *
FROM Tabelle1
JOIN Tabelle2
  ON (Tabelle1.id=Tabelle2.Tabelle1Id)
WHERE Tabelle2.id=[gesuchteID]
Gruß hpvw
 
Zurück