Hallo,
ich habe zwei Tabellen (tabA und tabB) und aktuell frage ich beide Tabellen nacheinander ab um einen Wert zu ermitteln. Wie kann ich das in einer Abfrage lösen?
Ich lese den Wert (user) aus TabA aus anhand meiner ID und mit diesem Wert (user) kann ich dann den Namen aus TabB (hier ist es allerdings userid) ermitteln.
grundsätzlich schon. Es ist aber nicht unbedingt notwendig, ein Subselect tut’s auch:
select Name from TabB where userid=(select id from TabA);
(statt „=“ müsstest du „in“ benutzen, wenn du in dem eingeklammerten Subselect keine Bedingung setzt, die sicherstellt, dass das Subselect nur eine id zurückliefert)
oder eben
select Name from TabB inner join TabA on userid=id;
Hallo Christa,
danke für deine schnelle Antwort, das sieht plausibel aus aber ich habe eine Komponente vergessen…
Wie baue ich in diese Abfrage (ich würde die „Inner Join“ Variante nehmen) noch die Auswahl einer bestimmten ID in TabA ein? So würde ich ja jetzt alle Werte zuordnen…
VG, Thomas
Hallo Christa,
ich dachte auch, dass ich zumindest Grundkenntnisse bei SQL-Anweisungen habe, aber wenn man wie ich einen Schreibfehler in der Anweisung hat, helfen auch keine Kenntnisse
Die Where-Klausel hatte ich bereits auch so getestet, aber bei mir hatte es nicht geklappt. Als du dann die gleiche Lösung gepostet hast, hab ich den Schreibfehler erst gefunden. Danke für dein Hilfe!!!