Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak uzyskać łączną sumę

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

Przykład SQL Fiddle

Wyjście

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

Edytuj: jest to uogólnione rozwiązanie, które będzie działać na większości platform db. Kiedy jest dostępne lepsze rozwiązanie dla Twojej konkretnej platformy (np. Gareth), użyj go!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak uzyskać różnicę między dwoma wierszami dla pola kolumny?

  2. Utwórz tabelę w SQL Server (T-SQL)

  3. Jaka jest różnica między CHAR i VARCHAR w SQL Server - SQL Server / T-SQL Tutorial, część 31

  4. Opanowanie wykorzystania list stop z wyszukiwaniem pełnotekstowym serwera SQL Server (FTS)

  5. Odmówiono uprawnienia EXECUTE do obiektu „xxxxxxx”, bazy danych „zzzzzzz”, schematu „dbo”