【问题标题】:Cumulating value of previous row in Column FINAL_VALUE在 FINAL_VALUE 列中累积上一行的值
【发布时间】:2020-09-01 22:07:51
【问题描述】:

我的表名是“fundt”,我的问题是:

如何在 FINAL_VALUE 列中累计上一行的总和?"

我认为交叉连接可以,但我不知道如何。

【问题讨论】:

  • 累计是什么?请解释final_year的计算规则,看你的数据不是很明显。
  • 请阅读this,了解一些改进问题的技巧。

标签: sql sql-server tsql ssms window-functions


【解决方案1】:

我怀疑你想要带有窗口框架的窗口函数:

select
    t.*,
    sum(final_value) over(
        order by it_month 
        rows between unbounded preceding and 1 preceding
    ) cumulative_final_value
    from mytable t

这为您提供了先前行(不包括当前行)的累积 sum(),使用列 it_month 进行排序。您可能需要根据您的确切要求对其进行调整,但这似乎是您正在寻找的逻辑。

【讨论】:

    猜你喜欢
    • 2012-09-14
    • 1970-01-01
    • 2016-08-28
    • 1970-01-01
    • 2020-07-18
    • 2019-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多