2016-04-22 9 views
0

Ich versuche, eine Abfrage in MS-Zugriff zu schreiben. Ich muss Daten für ein bestimmtes Feld aus zwei verschiedenen Tabellen basierend auf einem Kriterium auffüllen. (Bsp .: Wählen Sie die Daten aus der Tabelle X, wenn der Bundesstaat Kerala ist, wählen Sie die Daten aus der Tabelle Y). Ich habe mehrere Tabellen basierend auf einem Primärschlüssel verknüpft. Ich benutze 'Make Table' Abfrage-Option in MS-Zugriff, um die gewünschte Ausgabe in Form einer Tabelle zu erhalten, muss eine Abfrage für die Auswahl von Daten aus mehreren Quellen in der gleichen enthalten. Ist es möglich. Können einige Bedingungen gegeben sein? Bitte lass es mich wissen.MS Access-Abfrage: Mehrere Quellentabellen für ein bestimmtes Feld

Tables: The image has tables, I need a query such that when the state is KL the data has to be picked from table 3 else from table 2.

+0

Wenn nur eine Spalte iif verwendet (Feld = 'Kerala', dlookup(), dlookup()) in Abfrage – nazark

+0

Ich habe 3 solche Spalten, gibt es eine Möglichkeit, dlookup für drei Spalten zu verwenden? –

+0

ist es möglich, wenn Sie Ihre Tabellenstruktur geben, könnte ich bessere Lösung geben – nazark

Antwort

0

VBA verwenden, könnten Sie eine IF-Anweisung machen Sie Ihre Bedingungen zu überprüfen und haben es zwei dann ausführen verschiedene SQL-Anweisungen basierend auf Ihrem Test.

IF [State] = "Kerala" Then 
    Docmd.RunSQL "SELECT x, y, z INTO TEMP_Table FROM Table X" 
ELSE: 
    DoCmd.RunSQL "SELECT x, y, z INTO TEMP_Table FROM Table Y" 
End IF 

Wenn Ihre temp_table Daten aus mehreren Tabellen benötigt, unabhängig von der Bedingung, verwenden Unterabfragen in Ihrer Erklärung Ihre Tabellen zusammen, bevor SELECT ... INTO laufen zu verbinden.

+0

Vielen Dank für Ihre Antwort. Ich kann die Ausgabe jedoch nicht abrufen. Nicht sicher, ob ich es richtig mache. Die Daten aus zwei verschiedenen Tabellen müssen in einem einzigen Feld ausgefüllt werden. Ich gebe die IF-Anweisungen in der Abfrage-SQL-Ansicht ein. –