Was brauchst Du denn jetzt, 2005 oder 2012?
Falls ich oben gemeint war, ich habe nie geschrieben, dass row_number die Lösung ist.
Es war lediglich eine Erläuterung, um die entsprechenden Funktionen (Window Funktions) zu finden und einzuordnen. Dass ich selber Zweifel hatte, ob die Window Function Implementierung in Version 2005 bereits ausreicht, das zu lösen, hab ich ja angedeutet.
In dem Link von Dejan Vu ist ein Beispiel für 2005, allerdings mit Cross Apply, wie das performed, kann ich nicht sagen, es sollte jedenfalls funktionieren:
Code:
select
t.lfd,
t.wert ,
rt.runningTotal
from Table1 t
cross apply (select sum(wert) as runningTotal
from Table1
where lfd <= t.lfd
) as rt
order by t.lfd
Mit einer reinen
SQL Lösung sparst Du jedenfalls das Handling der Temp Table und brauchst keine SP.
Wenn es schnell genug ist, würde ich das vorziehen.
Das Problem mit der Where Bedingung habe ich nicht verstanden...
Zitat:
erst ab dem ersten wert der Abfrage und nicht nach dem ersten wert in der Tabelle
??