Как написать SQL для расчета скользящего среднего с некоторыми дополнительными формулами? - PullRequest
2 голосов
/ 30 апреля 2020

Ниже приведено изображение, на котором рассчитано среднее значение. Но требование немного больше сверх среднего значения.

Running average calculated already

Ниже приведено изображение, где требование содержится в листе Microsoft Excel.

Requirement on top of running average

Итак, чтобы рассчитать скользящее среднее с формулами, такими как = (3 * C4 + 2 * C5 + 1 * C6) / 6 , которые были собраны в листе Excel, какой SQL запрос можно было бы написать?

Кроме того, если это невозможно сделать через SQL, то как я могу использовать столбец D из второго изображения как моя мера в SSAS?

1 Ответ

3 голосов
/ 30 апреля 2020

используйте 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
...