Daten mit Hilfe einer Anfügeabfrage nach Kriterium -nicht Existent- in eine Tabelle hinzufügen

Es kann schon mal vorkommen, dass ein Wert, das in einer Tabelle existiert, in einer anderen auch vorhanden sein sollte. Ob das Wert in der zweiten Tabelle existiert, kann mithilfe einer Anfügeabfrage erfragt und bei nicht Vorhandensein gleichzeitig hinzugefügt werden.

Hierzu ein Beispiel:
Die folgende Abfrage fügt der Tabelle tbl_NeueWL alle Wertelisten, die neu hinzugekommen sind und bei der in der Tabelle tbl_AlleWL im Feld Wertelisten_Alt das Wort Neu* vorkommen bzw. im Feld PH_Nr keinen Eintrag besitzen und nicht inaktiv sind, aber das wichtigste
-> die in der Tabelle tbl_NeueWL noch nicht existieren.

SQL-Anweisung der Abfrage:

INSERT INTO tbl_Neue_WL (WL_ID, Wertelistenname, WL_Art, Wertelistenname_Alt)
SELECT tbl_AlleWL.WL_ID, tbl_AlleWL.Wertelistenname, tbl_AlleWL.WL_Art, tbl_AlleWL.Wertelistenname_Alt
FROM tbl_AlleWL
WHERE (((tbl_AlleWL.Wertelistenname_Alt) Like "Neu*") AND ((Exists (SELECT * FROM tbl_Neue_WL
WHERE tbl_Neue_WL.WL_ID=tbl_AlleWL.WL_ID))=False)) OR (((Exists (SELECT * FROM tbl_Neue_WL
WHERE tbl_Neue_WL.WL_ID=tbl_AlleWL.WL_ID))=False
) AND ((tbl_AlleWL.Inaktiv)=False) AND ((tbl_AlleWL.PH_Nr) Is Null));

Entwurfsansicht der Abfrage:

Bild vergrößern



Weitere Access-Tipps →
Weitere Office-Tipps →
Startseite →