首页 > 解决方案 > 如何使用一些额外的公式编写 SQL 来计算运行平均值?

问题描述

以下是我计算的运行平均值的图像。但是在运行平均值之上,这个要求有点额外。

已经计算的运行平均值

以下是 Microsoft Excel 表中要求的图像。

运行平均值之上的要求

那么,为了用excel表格中收集的= (3*C4+2*C5+1*C6)/6之类的公式计算运行平均值,可以编写什么SQL查询?

另外,如果通过 SQL 不可行,那么我如何使用第二张图像中的 D 列作为我在 SSAS 中的度量?

标签: sqlsql-serverssmsssas

解决方案


相应地使用LAG()offset遵循您的公式

avg_val = ( (3.0 * lag(Open_, 2) over (order by M, [WEEK]) )
          + (2.0 * lag(Open_, 1) over (order by M, [WEEK]) )
          + (1.0 * Open_) ) / 6

推荐阅读