从上面的行收集值

时间:2014-07-07 15:02:31

标签: sql sql-server sql-server-2008 tsql

我在sql server中有一个表,我想在T-Sql中总结一个带有上行的单元格,如下所示:

 Quantity          Total
-----------------------------
    1                1
    5                6
    12               18
    20               38

我使用SQL Server 2008,我该如何实现?

问候,马吉德。

1 个答案:

答案 0 :(得分:0)

您正在寻找累积金额,它会出现。如果您使用的是SQL Server 2012或更高版本,请执行以下操作:

select quantity, sum(quantity) over (order by quantity)
from table t;

请注意order by quantity。您需要指定累积和的排序,通常是另外求和。

在早期版本中,您可以使用相关子查询来执行此操作:

select quantity,
       (select sum(t2.quantity)
        from table t2
        where t2.quantity <= t.quantity
       ) as total
from table t;