norwegen60
Benutzer
- Beiträge
- 12
Hallo zusammen,
ich habe eine Tabelle die im Wesentlichen aus einer Zeitspalte (Time), der aktuellen Leistung (Power) und der Leistungsquelle (Art) besteht.
Ich möchte nun die verbrauchte Energie über eine bestimmte Zeit per SQL berechnen und müsste dazu die einzelnen Verbräuche innerhalb des Zeitfensters summieren.
Also:
E = Summe(P * (T1 - T2)) where T between Zeitfenster
Mit
SELECT (LEAD(Zeitpunkt over (order by Zeitpunkt) - Zeitpunkt) * Power/360000 as Energy from PowerTable where Art = 10 order by Zeitpunkt
kann ich die Energieverbräuche der einzelnen Abschnitte berechnen. Leider schlägt aber das GroupBy fehl
SELECT Art, sum((LEAD(Zeitpunkt over (order by Zeitpunkt) - Zeitpunkt) * Power/360000) as Energy
from PowerTable
where (Art= 10) and (Zeitpunkt between '27.08.2023 00:00' and '28.08.2023 00:00')
group by Art
funktioniert nicht => "Fensterfunktionen können im Kontext einer anderen Funktion oder eines anderen Aggregats nicht verwendet werden."
Hat jemand eine Idee?
Grüße und Danke
Gerd
ich habe eine Tabelle die im Wesentlichen aus einer Zeitspalte (Time), der aktuellen Leistung (Power) und der Leistungsquelle (Art) besteht.
Ich möchte nun die verbrauchte Energie über eine bestimmte Zeit per SQL berechnen und müsste dazu die einzelnen Verbräuche innerhalb des Zeitfensters summieren.
Also:
E = Summe(P * (T1 - T2)) where T between Zeitfenster
Mit
SELECT (LEAD(Zeitpunkt over (order by Zeitpunkt) - Zeitpunkt) * Power/360000 as Energy from PowerTable where Art = 10 order by Zeitpunkt
kann ich die Energieverbräuche der einzelnen Abschnitte berechnen. Leider schlägt aber das GroupBy fehl
SELECT Art, sum((LEAD(Zeitpunkt over (order by Zeitpunkt) - Zeitpunkt) * Power/360000) as Energy
from PowerTable
where (Art= 10) and (Zeitpunkt between '27.08.2023 00:00' and '28.08.2023 00:00')
group by Art
funktioniert nicht => "Fensterfunktionen können im Kontext einer anderen Funktion oder eines anderen Aggregats nicht verwendet werden."
Hat jemand eine Idee?
Grüße und Danke
Gerd