SSRS 基于行号求和值

SSRS sum values based on row number

我想获取列中所有值的总和,如果它们的行号大于当前行

所以如果我有 4 行:

第 1 行是第 2,3 行和第 4 行的总和

第 2 行是第 3 行和第 4 行的总和

第 3 行是第 4 行的值

第 4 行为 0

这是我目前的查询:

SELECT
  no_,
  name AS member,
  amount,
  effective,
  balance

FROM c

WHERE 
    status != 'closed'
    AND amount != 0.00
ORDER BY no_, effective

在我的 ssrs 中 table 我使用表达式 RowNumber("member") 为每个成员的每一行分配行号

您似乎需要倒序的累计和,不包括当前值。我会表达为:

select sum(val) over (order by rownum desc) - val

我很清楚这与您的查询有什么关系。

您也可以使用 window 框架来表达:

select sum(val) over (order by rownum rows between 1 following and unlimited following)

唯一的区别是最后一行 return NULL 而不是 0