zurück Home

Access: SQL-Abfragen

Abfragen Diese Darstellung der Abfrage erleichtert Erstellung Wartung und Darstellung von Abfragen sehr. Im Hintergrund erstellt Access immer eine SQL-Abfrage. Diese kann aufgerufen und editiert werden. Abfrage

SQL-Grundform

SELECT
Tabellenname.Variable, Tabellenname.Variable, ...
FROM Tabellenname ;

Beispiel

SELECT
Aktie.ID,
Aktie.Name,....
eigene_Aktien.PAPIER,
eigene_Aktien.N,....
FROM eigene_Aktien
INNER JOIN Aktie ON eigene_Aktien.[IDAkEig] = Aktie.[IDAktEin]
WHERE (((eigene_Aktien.ART)="W"))
ORDER BY Aktie.Name;

Varialbe

 Aktie.Name, Aktie.Text, ...   Tabelle "Aktie", Variablen "Name","Text"
Konto.Nr, Konto.ART, ... 2. Tabelle "Konto"
Wenn eine Abfrage 2 Tabellen erfolgt und der gleiche Variablenname in beiden Tabellen auftaucht, so muss die Variable umbenannt werden:
Aktie.ISIN AS Aktie_ISIN,...
eigene_Aktien.ISIN AS eigene_Aktien_ISIN,
Wenn Variablennamen kritische Zeichen zum Beispiel-Blank enthalten, so muss der Name in eckige Klammern:
Aktie.[A-Anz],...
Aktie.[Kurs-Dat], ... eigene_Aktien.[Kurs EU],

Join

Wenn Variablen aus 2 Tabellen verwendet werden sollen, so müssen diese mit Join verbunden werden. FROM Konto
INNER JOIN Aktie ON Konto.[IDAkEig] = Aktie.[IDAktEin]
Es werden die Tabellen "Konto" und "Aktie" verbunden. Die Verbindung erfolgt über "IDAkEig" aus Konto und "IDAktEin" aus Aktie.
SELECT
Arzt.ID, Arzt.KURZ, Arzt.TEILVON, Arzt.ANREDE, Arzt.H_F, Arzt.ADEL, Arzt.Name_An, Arzt.NachNAME,
Arzt.VORNAME, Arzt.GEB, Arzt.Pax, Arzt.TITEL, Arzt.FUNKTION, Arzt.PLZ, Arzt.ABTEIL,
Arzt.STADT AS Arzt_STADT,
Arzt.Adress2, Arzt.STRASSE, Arzt.STRASSEPP, Arzt.PLZORTPP, Arzt.KLINIK AS Arzt_KLINIK, Arzt.KLINIK2,
Arzt.UNIV, Arzt.Firma, Arzt.TEL, Arzt.TelPP, Arzt.Handy, Arzt.FAX, Arzt.EMAIL, Arzt.INTERNET,
Arzt.[AUS],
Arzt.Exitus, Arzt.Status, Arzt.FACH, Arzt.ART, Arzt.KOM, Arzt.AGR, Arzt.UKE_ex, Arzt.UKE, Arzt.JKS_EX,
Arzt.JKS, Arzt.Zuweiser_JKS, Arzt.AKOG, Arzt.RBM, Arzt.SENO, Arzt.PAT_N, Arzt.PAT_LETZT, Arzt.Beginn,
Arzt.[FALSCH],
Arzt.DatNEU, Arzt.UPDAT, Arzt.ID_U AS Arzt_ID_U, Arzt.UA_ID, Arzt.UK_ID, Arzt.PraxisID,
Arzt.ID_KK AS Arzt_ID_KK,
Arzt.ID_KT, Arzt.AuslandID, Arzt.OnkKoll, Arzt.Einlad, Arzt.VIP,

KLINIK.ID_KK AS KLINIK_ID_KK,
KLINIK.NAME AS KLINIK_NAME,
KLINIK.STADT AS KLINIK_STADT,

Uni.ID_U AS Uni_ID_U,
Uni.STADT AS Uni_STADT, Uni.Name AS Uni_Name, Uni_Klin.ID_UK,
Uni_Klin.KLINIK AS Uni_Klin_KLINIK, Uni_Klin.STADT AS Uni_Klin_STADT,

KLINIK.KLINIK AS KLINIK_KLINIK

FROM
Uni RIGHT JOIN
(Uni_Klin RIGHT JOIN
(KLINIK RIGHT JOIN
Arzt

ON KLINIK.[ID_KK] = Arzt.[ID_KK])

ON Uni_Klin.[ID_UK] = Arzt.[UK_ID])

ON Uni.[ID_U] = Arzt.[ID_U];

Auswahl

Eine Fallauswahl erfolgt mit dem Befehl WHERE. WHERE (((Konto.ART)="W")) Es werden nur die Tabellenzeilen angezeigt, bei denen die Variable „Art“ der Tabelle „Konto“ den Wert „W“ hat.
SELECT KONTO.ID, KONTO.EURO,...
FROM KONTO
WHERE (((Year([KONTO].[DATBANK]))=2016));
SELECT KONTO.EURO, KONTO.DATEIN, KONTO.DATBANK, KONTO.EMPF, KONTO.EmpfID, KONTO.VWZ1
FROM KONTO
WHERE (((KONTO.EmpfID))=6567)
ORDER BY KONTO.DATEIN DESC;

Sortierung

Die Tabellenzeilen können mit dem Befehl „ORDER“ sortiert werden. ORDER BY Aktie.Name; Die Zeilen der Tabelle werden nach der Variablen „Name“ der Tabelle „Aktie“ sortiert.

Teil von

Access: Abfragen MS Access RDBMS, relationales Datenbank - Management System Datenbanken

Impressum                                     Zuletzt geändert am 23.06.2022 19:24