Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So erhalten Sie die kumulierte Summe

select t1.id, t1.SomeNumt, SUM(t2.SomeNumt) as sum
from @t t1
inner join @t t2 on t1.id >= t2.id
group by t1.id, t1.SomeNumt
order by t1.id

SQL-Fiddle-Beispiel

Ausgabe

| ID | SOMENUMT | SUM |
-----------------------
|  1 |       10 |  10 |
|  2 |       12 |  22 |
|  3 |        3 |  25 |
|  4 |       15 |  40 |
|  5 |       23 |  63 |

Bearbeiten: Dies ist eine verallgemeinerte Lösung, die auf den meisten DB-Plattformen funktioniert. Wenn es eine bessere Lösung für Ihre spezifische Plattform gibt (z. B. Gareth's), verwenden Sie sie!