Neuigkeiten:

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

Mobiles Hauptmenü

Abfrage Datum Between

Begonnen von IronMan, März 30, 2017, 14:41:18

⏪ vorheriges - nächstes ⏩

IronMan

Hallo zusammen,

ich habe ein Problem, bei dem ich momentan nicht weiter komme und hier auf Hilfe spekuliere. Ich muss gestehen, dass ich eher aus der Excel Ecke komme und meine Access Kenntnisse mehr oder weniger auf "learing by doing" basieren. Vor ~5-6 Jahren hatte ich das letzte mal mit Access etwas mehr zu tun das war aber auch eher einfachere Aufgaben (Daten Filtern, Zusammenbringen, bisschen was berechnen). Das ganze wäre auch in Excel gegangen aber aufgrund der Datenmenge haben wir das in Access gemacht. Wir haben hier nun ein etwas größeres Revisionsprojekt laufen und hatte das "Glück" in dem Team zu landen und nun habe ich ein Problem bei dem ich gerade nicht voran komme.

Unsere Basis sind Rechnungsdaten der letzten Jahre (ab 2010). Zu diesen Daten müssen diverse andere Informationen hinzugefügt werden. Grundsätzlich lassen sich viele Daten auf Basis von 2 oder 3 Feldern mit diversen Referenztabellen verknüpfen. Hin und wieder spielt allerdings das Rechnungsdatum eine Rolle in den Referenztabellen gibt es aber "nur" Daten für die Gültigkeit der Einträge (Feld Valid_from und Valid_to).

Aktuelle Beispiel (etwas vereinfacht):
Basisdaten:
Kunde:   Rechnungsdatum:    Land:
Meier      17.03.2014             Deutschland
Meier      09.08.2015             Deutschland

Das Land soll nun in der Referenztabelle mit dem Berater verknüpft werden der zu dem Zeitpunkt verantwortlich war. Die Tabelle sieht so aus:
Kunde      Land               Berater      Valid_from       Valid_to
Meier       Deutschland     Schulze      01.01.2014     31.12.2014
Meier       Deutschland     Müller        01.01.2015     31.12.2015

Nun würde möchte ich eine Abfrage haben, in der Access mir beim ersten Datensatz Schulze ausgibt und beim zweiten Müller aber da habe ich gerade keine Idee, wie ich das Umsetze. Hab zwar Versucht in der Abfrage was mit "where Rechnungsdatum between Valid_from and Valid_to" zu machen aber das klappt nicht.

Danke für die Hilfe und viele Grüße


Wurliwurm

Hi, ich konnte Deine Abfrage in einem schnellen Test erfolgreich simulieren. Es braucht dazu eine Unterabfrage

SELECT Rechnungen.Id, Rechnungen.Rechnungsdatum, (SELECT Gueltigkeit.Berater FROM Gueltigkeit
WHERE Rechnungen.Rechnungsdatum BETWEEN Gueltigkeit.Valid_from
AND Gueltigkeit.Valid_to) AS Berater
FROM Rechnungen;


Ich hoffe, der Tip hilft Dir auf die Sprünge. Wenn Du gar nichts damit anfangen kannst, mußt Du Dich in SQL einarbeiten mit Fokus auf Subqueries.

IronMan

Hi,

danke für den Tip. Werde mir das Thema Subqueries mal anschauen das sagt mir bis jetzt nämlich nix.

Viele Grüße