SQL-Abfrage (Zeiträume ermitteln)

Homer1967

Neuer Benutzer
Beiträge
3
Hallo zusammen,

ich habe eine Tabelle, in der für mehrere Personen Zeiträume enthalten sind, die sich auch überschneiden können oder doppelt enthalten sind (siehe Beispiel):

Person-ID|Beginn|Ende
111 03.07.2005 (-) 08.12.2007
111 12.10.2005 (-) 19.10.2007
111 12.10.2005 (-) 19.10.2007
111 13.11.2004 (-) 14.11.2005
111 07.12.2005 (-) 30.04.2008
111 01.05.2008 (-) 31.12.2009
111 01.01.2013 (-) 15.09.2015

Ich bräuchte nun eine oder mehrere Abfragen, die mir (1) die Zeiträume zusammenfassen und (2) die freien Zeiträume dazwischen ausgibt.

Bin für jede Hilfe dankbar :)
 
Werbung:
Das ist alles umsetzbar, z.B. mit Window-Funktionen. Leider glaube ich nicht das Access das kann, welche Version setzt du ein? Oder hast du eine SQL-Datenbank dahinter und Access nur im Front-End?

Wenn du Zeiträume zusammen führen willst, sollen die originären Daten dann tatsächlich verworfen werden oder soll das live als Sicht passieren?
 
Bisher ist es ein reines Access-Projekt (Access 2016); ich kann aber auch einen Umweg über SQL Server 2012 (SP4) nehmen, wenn es mit Access nicht gehen sollte.

Die Daten sollen erhalten bleiben, mir schwebt nur eine Abfrage vor (evtl. eine Tabellenerstellungsabfrage, wenn die Abfrage sehr lange laufen sollte).

Danke & Gruß
 
Ich würde das wohl mal mit MSSQL basteln, ist aber immer etwas frickeling. Das mit den doppelten Zeiträumen ist ein bischen blöd, brauchst du vielleicht nur freie Zeiträume?
 
Werbung:
Konkret müsste ich wissen, ob es in den letzten 365 Tagen Lücken gibt. Frei Zeiträume wären also auch in Ordnung, solange doppelte Zeiten oder Überschneidungen berücksichtigt werden.
 
Zurück
Oben