Einzelnen Beitrag anzeigen

Benutzerbild von Nersgatt
Nersgatt

Registriert seit: 12. Sep 2008
Ort: Emlichheim
693 Beiträge
 
Delphi 10.1 Berlin Professional
 
#1

(SQL) Anzahl Tage ohne Buchung

  Alt 20. Mär 2015, 09:44
Datenbank: MySql • Version: 5.6 • Zugriff über: Sql
Moin!

Mich hat meine SQL-Muse verlassen.

Ich habe eine Tabelle mit Personen und dazu eine Buchungstabelle mit einem Timestamp:

Personen:
IDNachnameVorname
1 Müller Max
2 Schulze Fritz
3 MustermannErika

Buchungen:
IDperson_idzeitpunktweitere Daten
1118.03.2015 12:03....
1118.03.2015 15:12....
1120.03.2015 12:03....
1217.03.2015 15:00....

Also eine 1:n Verknüpfung über buchungen.person_id <-> personen.id
Es kann pro Tag für jede Person mehr als eine Buchung geben. Es kann aber auch Tage geben, an denen es keine Buchung für eine Person gibt.

Nun möchte ich für einen gegebenen Zeitraum die Anzahl der Tage ermitteln, an denen es KEINE Buchung für die Person gibt.

Also wenn ich als Zeitraum 17.03. bis 21.03. abfragen, wünsche ich mir folgendes Ergebnis:
person_idnachnamevornameAnzahl
1MüllerMax3
2SchulzeFritz4
3MustermannErika5

Wie könnte man sowas anstellen? Wichtig ist mir auch, dass das möglichst Performant abläuft. Ich werde so ca. 1000 Personendatensätze haben und im Schnitt 4 Buchungsdatensätze pro Person und Tag. Der Abfragezeitraum kann auch mal ein ganzes Jahr sein. Somit also knapp 1500 Datensätze pro Person(!) im Abfragezeitraum.

Vielen Dank!
Jens
  Mit Zitat antworten Zitat