Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: Kloso am Juni 06, 2020, 21:10:50

Titel: Tabellenjoin mit einer 2-Spalten-Where-Abfrage mit Bezug auf andere Tabelle
Beitrag von: Kloso am Juni 06, 2020, 21:10:50
Hallo Zusammen,

es hört sich für mich einfach an. Aber ich komme einfach nicht weiter.

Ich habe eine Abfrage (A) mit ~10 Spalten gejoint aus 5 Tabellen. Plus ich habe eine Hilfstabelle (HT)
Nun möchte ich diese nette funktionierende Abfrage (A) wie folgt WHERE-filtern mit der Hilfstabelle (HT):
WHERE A.Spalte1 und A.Spalte2 = HT.SpalteX und HT.SpalteY

Bsp.

Abfragetabelle hat:






A.Spalte1A.Spalte2
Canada1
Canada2
Canada3
Canada4

Hilfstabelle hat:




HT.SpalteXHT.SpalteY
Canada2
Canada4

Nach der richtigen WHERE Abfrage muss in der Abfragetabelle nur noch 2 und 4 angezeigt werden:




A.Spalte1A.Spalte2
Canada2
Canada4

Hättet ihr einen Tipp für mich?

Bedanke mich im Voraus, Kloso!
Titel: Re: Tabellenjoin mit einer 2-Spalten-Where-Abfrage mit Bezug auf andere Tabelle
Beitrag von: PhilS am Juni 06, 2020, 21:48:36
Zitat von: Kloso am Juni 06, 2020, 21:10:50
Ich habe eine Abfrage (A) mit ~10 Spalten gejoint aus 5 Tabellen. Plus ich habe eine Hilfstabelle (HT)
Nun möchte ich diese nette funktionierende Abfrage (A) wie folgt WHERE-filtern mit der Hilfstabelle (HT):
WHERE A.Spalte1 und A.Spalte2 = HT.SpalteX und HT.SpalteY

Deine obige Prosa-Beschreibung ist schon relativ nah dran an einer funktionierenden SQL-Abfrage:
SELECT *
FROM Abfrage A
INNER JOIN Hilfstabelle HT
ON A.Spalte1 = HT.SpalteX 
AND A.Spalte2 = HT.SpalteY



Mit eine Where-Condition geht das prinzipiell auch, ist aber eher etwas ungewöhnlich formuliert:

SELECT *
FROM Abfrage A, Hilfstabelle HT
WHERE A.Spalte1 = HT.SpalteX 
AND A.Spalte2 = HT.SpalteY


Titel: Re: Tabellenjoin mit einer 2-Spalten-Where-Abfrage mit Bezug auf andere Tabelle
Beitrag von: Kloso am Juni 06, 2020, 22:25:20
Hallo PhilS,

vielen Dank! Das hat super funktioniert mit dem Inner JOIN ON (x and y).

Besten Dank!