April 14, 2021, 16:53:17

Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!


Mehrere Kriterien für Abfrage verwenden

Begonnen von BikeArno, Februar 06, 2021, 11:24:21

⏪ vorheriges - nächstes ⏩

BikeArno

Guten Tag ins Forum,

ich versuche weiter zu lernen und stehe vor einem hoffentlich kleinerem Problem, bei dem ich leider nicht weiter komme. Ich hoffe, ich blamiere mich nicht:

Mein Ziel ist es, aus den drei Feldern (Wert 1 bis 3, siehe Anhang), die in drei verschiedenen Tabellen (Tabelle1 bis 3) stehen, den jeweils aktuellsten Wert für eine Person (diese sind in den drei Tabellen identisch) per Abfrage in Tabelle 1 zu erhalten.

In Tabelle 1 stehen also die ursprünglichen Werte für die Personen (mit ID zugeordnet). In Tabelle 2 stehen für einige Personen neuere Werte, welche ggf. die Werte in Tabelle 1 ersetzen sollen. In Tabelle 3 schließlich stehen für wenige Personen noch neuere Werte, welche ggf. die Werte in Tabelle 2 und/oder Tabelle 1 ersetzen sollen, wenn es dort Einträge gibt. Am Ende soll also Tabelle 1 mit den jeweils aktuellsten Werten aus Tabelle 3/2 befüllt werden. Mit zwei Tabellen habe ich es dank Hilfe des Forums per Aktualisierung hinbekommen, nun weiß ich aber nicht, wie ich das mit drei Kriterien lösen kann.

Ist das möglich, und wenn ja wie? Danke schonmal :-)
 

ebs17

Was man einmal kann, kann man wiederholen. Tausche also nach Ausführung der ersten Abfrage den Tabellennamen und führe die Abfrage erneut aus. So etwas kann man dann auch als Code hinterlegen, wenn es öfter benötigt würde.

Aber eigentlich ist Überschreiben Informationsverlust. Mancher wird sich im Nachgang ärgern, vorhandene Daten weggeworfen zu haben, eine Historie, eine Statistik usw. wären nicht möglich.
Daher wäre es ein sinnvoller Weg, diese beweglichen Daten in eine zusätzliche Tabelle zu verschieben mit einem Schlüssel auf die Person und einem Zeitstempel, um ein "neu" besser zu qualifizieren.
Dann würde man einfach den Wert2 mit Fremdschlüssel und Timestamp in dieser zweiten Tabelle anfügen.

Erst Sinnieren, dann Aktionieren.
Mit freundlichem Glück Auf!

Eberhard

BikeArno

Danke vielmals für die simple aber strahlende Erleuchtung.
 
Noch eine generelle Nachfrage: Für die Aktion sind ja zwei Abfragen erforderlich (qry_1 und qry_2). Kann man die beiden SQL-Codes auch in eine gemeinsame Abfrage packen oder muss man diese immer separat ausführen? (Ich frage, weil ich schon sehr viele qry_'s habe und es für mein Verständnis langsam unübersichtlich wird).

Viele Grüße

ebs17

Jet-SQL kann nur immer eine Abfrage.
Man kann und wird sich aber eine VBA-Prozedur anlegen, wo man die entsprechende Folge aufruft. Irgendein Knöpfchen auf einem Formular wird sich schon finden, um das zu starten.
Mit freundlichem Glück Auf!

Eberhard

BikeArno

Danke vielmals für die Antwort. Der Button findet sich.

Für mich nochmal nachgefragt: Ich habe ungefähr pro Tabelle ca. 10 solcher Felder, die direkt aneinander anschließen (z.B. geänderte Adressen wie Name, Straße, Nummer, Ort, Tel...). Kann man diese Felder "mit einem Rutsch" aktualisieren, oder müsste man wie geschrieben mehrere Einzel-Abfragen bauen und diese per VBA und Button starten?

Gruß