Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Löschabfrage - aber wie?

Begonnen von TTB, Januar 02, 2017, 21:05:35

⏪ vorheriges - nächstes ⏩

TTB

Hallo liebe Leute,

ich steh mal wieder vor einem Problem und komme nicht weiter:

Ich habe eine Tabelle 1, die bestimmte Stammdaten enthält; unter anderem Name, Vorname, eMailadresse.

Ich habe eine zweite Tabelle 2, die grundsätzlich die gleichen Daten enthält. (Es ist allerdings eine Exceltabelle, die durch die Datenbank ersetzt wird)
Der einzige Unterschied ist, dass in ihr weniger Datensätze enthalten sind, als in der Tabelle, die bereits in Access steckt.

Ich möchte die Datensätze, die in der Tabelle 1 noch enthalten sind, aber in Tabelle 2 nicht mehr aus Tabelle 1 entfernen, so dass beide Tabellen die geringere Datensatzanzahl haben.

Ein Import der Tabelle 2 und ein Ersetzen von Tabelle 1 scheidet aus, da einige Daten in Tabelle 2 bereits aktualisiert sind und ein Verlust nicht hinnehmbar wäre.
Die genannten Grunddaten sind aber die gleichen, um Datensätze eindeutig zu identifizieren.

Ich hoffe, ihr könnt mir helfen.

lG
Chris

Lachtaube

Wenn definiert ist, welche Felder notwendig sind, um einen Datensatz in beiden Tabellen eindeutig zu identifizieren, kann eine Löschabfrage so aufgebaut werden. (Ich gehe für die Identifizierung von einem Feld mit Namen ID aus.)
DELETE
FROM Tabelle1 t1
WHERE NOT Exists (SELECT * FROM Tabelle2 WHERE ID = t1.ID)


PS: Stamm- und Grunddaten lassen mich vermuten, dass Du eine Baumschulen-Datenbank vorliegen hast. :)
Grüße von der (⌒▽⌒)

TTB

Japp! Aber mit den Datenblättern habe ich keine Probleme ;)

gleichartige ID Felder wären zu schön gewesen. Ich habe das Ganze soeben gelöst:

1. Exceltabelle importiert.
2. Abfrage generiert und dort identische Felder verknüpft
3. Abfrageergebnis als Exceltabelle exportiert
4. Tabelleninhalt von Tabelle 1 gelöscht
5. Weil ein direkter Tabellenimport nicht funktionierte, habe ich das exportierte Abfrageergebnis in eine neue Tabelle 3 importiert
6. und diese mit einer Anfügeabfrage an Tabelle 1 angefügt

Der weg ist alles andere als schön, aber da es eine einmalige Sache sein dürfte, wollte ich nicht noch mehr Zeit daran verlieren.

Danke für die Mühe und noch einen angenehmen Abend!

Chris