[英]Moving Average in SQL Server
我有下表的值:
Row_ID FQFY Average
1 2018-Q1 70%
2 2018-Q2 60%
3 2018-Q3 50%
4 2018-Q4 90%
5 2019-Q1 70%
6 2019-Q2 80%
7 2019-Q3 20%
8 2019-Q4 NULL
9 2020-Q1 30%
從第 4 行開始,我需要計算前 4 行值的移動平均值。 如果有任何NULL
值,那么要求是在做平均時忽略這個NULL
有人可以在這里幫助我使用 SQL 服務器中的代碼嗎?
將AVG
與適當的 window 框架一起使用:
SELECT *, AVG(Average) OVER (ORDER BY FQFY ROWS BETWEEN 3 PRECEDING AND CURRENT ROW) rollingAverage
FROM yourTable;
關於NULL
要求, AVG
默認已經忽略NULL
值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.