Hallo ihr Lieben,
ich brauche mal wieder eure Hilfe.
Ich habe zwei Tabellen. In der ersten sind Stunden aufgelistet, in der zweiten die dazugehörigen Rechnungen. Daraus möchte ich den Stundensatz errechnen lassen. Soweit ganz einfach.
Das Problem ist, dass die Rechnungen, anders als die Stunden, nicht pro Kalenderwoche gestaffelt sind. So gibt es z.B. eine Rechnung, die von KW 4-5 geht und eine, die sich nur auf KW 5 bezieht. Jetzt müssten also die Beträge und die Stunden aus beiden Rechnungen bzw. KWs addiert werden, um dann den entsprechenden Stundensatz zu ermitteln. Für KW 6 gibt es aber nur eine Rechnung, da muss also nichts addiert werden. Dann gibt es wieder zwei Rechnungen, diesmal ist aber das Startdatum identisch und das Enddatum unterscheidet sich. Dennoch müssen auch diese beiden Rechnungen und die dazugehörigen Stunden addiert werden.
Ich bin da gerade ziemlich planlos.
Beispieldatenbank hänge ich mal an.

Zusammenfassung von Datensätzen mit zeitlicher Überschneidung
Zusammenfassung von Datensätzen mit zeitlicher Überschneidung
- Dateianhänge
-
- Rechnungen.zip
- (3.8 KiB) 147-mal heruntergeladen
Lo Version 7.0.6.2 (64x)
Eingebettete HSQLDB
Windows 10
Eingebettete HSQLDB
Windows 10
Re: Zusammenfassung von Datensätzen mit zeitlicher Überschneidung
Moin,
aus meiner Sicht der falsche Ansatz, es muss eine Verbindung von der Rechnungsnummer zu den dazu geleisteten Stunden geben, dann ist es ganz leicht, siehe Beispiel anbei.
Gruß R
EDIT:
wenn du zu angehängtem Beispiel nur eine, statt wie im Beispiel, zwei Abfragen verwenden möchtest, diese funktioniert:
aus meiner Sicht der falsche Ansatz, es muss eine Verbindung von der Rechnungsnummer zu den dazu geleisteten Stunden geben, dann ist es ganz leicht, siehe Beispiel anbei.
Gruß R
EDIT:
wenn du zu angehängtem Beispiel nur eine, statt wie im Beispiel, zwei Abfragen verwenden möchtest, diese funktioniert:
Code: Alles auswählen
SELECT
"Re-Nr.",
"VON",
"BIS",
"Datum",
"Betrag",
"SUMME_STUNDEN",
"Betrag" / "SUMME_STUNDEN" AS "STUNDENSATZ"
FROM "Rechnungen"
LEFT JOIN
(SELECT
"FK_ID_R",
MIN( "Datum" ) "VON",
MAX( "Datum" ) "BIS",
SUM( "Stunden" ) "SUMME_STUNDEN"
FROM "Stunden"
GROUP BY "FK_ID_R")
ON "Re-Nr." = "FK_ID_R"- Dateianhänge
-
- Rechnungen.zip
- (14.76 KiB) 158-mal heruntergeladen
Windows 11: AOO, LO Linux Mint: AOO, LO
