Ich wäre dankbar für einige Hilfe mit dem folgenden Problem, das ich habe. Ich habe die folgenden zwei Tabellen (TBLA und TBLB):ms Access sql erweitern
tblA
+----+------+
| ID | item |
+----+------+
| 1 | c |
| 2 | a |
| 3 | b |
| 4 | e |
| 5 | d |
| 6 | f |
| 7 | a |
| 8 | c |
+----+------+
und
tblB
+----+----+
| f1 | f2 |
+----+----+
| a | |
| b | a |
| c | a |
| d | |
| e | |
| f | d |
| g | d |
| h | d |
| I | |
+----+----+
Was ich möchte, ist erreichen: wo ein Wert im Positionsfeld aus TBLA erscheint in der f2 in TBLB Feld Ich mag würde alle TBLB f1 Werte auszuwählen, zusammen mit dem ID-Wert von TBLA, so dass wir erhalten die folgenden Ergebnisse:
+----+------+
| ID | item |
+----+------+
| 2 | b |
| 2 | c |
| 5 | f |
| 5 | g |
| 5 | h |
| 7 | b |
| 7 | c |
+----+------+
Beachten Sie, dass ID-Wert 2 und 7 von TBLA, während h Der gleiche Wert ('a') erscheint immer noch getrennt in den Ergebnissen. Dies ist erforderlich.
Ich habe mit den folgenden Ideen spielen zu:
SELECT f1 FROM tblB
WHERE f2 IN(SELECT item FROM tblA)
//
SELECT ID,f1 FROM tblA,tblB
WHERE f2 IN(SELECT item FROM tblA)
//
SELECT x.ID, y.f1
FROM tblA AS x, tblB AS y
WHERE y.f2 IN(SELECT item FROM tblA)
Aber ich bin zu kämpfen um dorthin zu gelangen.
Vielen Dank und für die schnelle Antwort! funktioniert perfekt. Ich muss mehr über Joins und Aliase lesen. – Jim