@jobo
Das verschachtelte Select funktioniert auch sehr gut.
Ich dachte nur das es vielleicht auch direkt mit der Over Funktion klappt.
Mit UNBOUNDED PRECEDING habe ich schon alles versucht was ich in der
Dokumentation dazu gefunden habe.
Und, es Stimmt, eigentlich ist es egal da ich es für 2005 nicht nutzen kann.
Aber es interessiert mich doch sehr, wieviel performanter man es in neuren Versionen lösen kann.
@Dejan Vu
Das Subselecct habe ich ja schon getestet.
Der Optimizer funktioniert da wirklich super.
folgende Abfrage benötigt nur noch 22ms
SQL-Code:
Select * from(
select lfd, wert,
SUM(wert) OVER(ORDER BY lfd
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS Summe
FROM Table1) as tbl1 where (tbl1.lfd > 20920)
und das bei über 22000 Datensätzen.
Ich denke noch schneller geht es kaum.
Das Subselect ist nur unbedeutend langsamer.
Ich wollte nur die Abfrage möglichst optimieren und die OVER Funktion richtig verstehen und auch nutzen.