0
MySqlの月次データから移動平均を計算したいと考えています。MySqlの月次データから移動平均を計算する
team_id
の前回の12か月間のデータを使用して、 の平均販売数を計算します。
特定の月にteam_id
が見つからない場合は、その月をとしてください。
もう一つの注意点: 我々はOctober 2016
である場合、私は September 2016
からSeptember 2015
になるように移動平均ウィンドウをしたいと思います。ここで
動作しません。私の試みです:
SELECT t1.monthyear
, t2.team_id
, t1.itemssold
, AVG(t2.itemssold) AS avgTransactions
FROM t1
JOIN t1 AS t2
ON PERIOD_DIFF(t2.monthyear,t1.monthyear) = 12
AND (t2.team_id = t1.team_id)
GROUP
BY t1.team_id
, monthyear;
一部のデータ:
monthyear tmonth tyear team_id ItemsSold
201405 5 2014 23 1
201406 6 2014 23 3
201407 7 2014 23 5
201408 8 2014 23 3
201409 9 2014 23 7
201410 10 2014 23 1
201411 11 2014 23 4
201501 1 2015 23 6
201502 2 2015 23 2
201503 3 2015 23 2
201504 4 2015 23 5
201505 5 2015 23 5
201506 6 2015 23 6
201507 7 2015 23 11
201508 8 2015 23 13
201509 9 2015 23 5
201601 1 2016 23 14
201602 2 2016 23 4
201603 3 2016 23 3
201604 4 2016 23 10
201605 5 2016 23 9
201606 6 2016 23 7
201409 9 2014 83 1
201511 11 2015 83 1
201604 4 2016 83 4
201605 5 2016 83 1
201606 6 2016 83 3
201405 5 2014 88 1
201406 6 2014 88 3
201407 7 2014 88 4
201408 8 2014 88 3
201409 9 2014 88 6
201410 10 2014 88 7
201411 11 2014 88 5
201412 12 2014 88 11
201501 1 2015 88 8
201502 2 2015 88 5
201503 3 2015 88 6
201504 4 2015 88 3
201505 5 2015 88 11
201506 6 2015 88 6
201507 7 2015 88 12
201508 8 2015 88 14
201509 9 2015 88 11
201510 10 2015 88 12
201511 11 2015 88 14
201512 12 2015 88 13
201601 1 2016 88 7
201602 2 2016 88 10
201603 3 2016 88 15
201604 4 2016 88 11
201605 5 2016 88 14
201606 6 2016 88 10
201410 10 2014 131 2
201501 1 2015 131 1
201505 5 2015 131 1
201509 9 2015 131 2
201407 7 2014 135 2
201503 3 2015 135 1
201509 9 2015 135 1
201603 3 2016 135 1
201605 5 2016 135 1
201405 5 2014 140 15
201406 6 2014 140 18
201407 7 2014 140 14
201408 8 2014 140 21
201409 9 2014 140 22
201410 10 2014 140 19
201411 11 2014 140 18
201412 12 2014 140 13
201501 1 2015 140 25
201502 2 2015 140 17
201503 3 2015 140 26
201504 4 2015 140 17
201505 5 2015 140 14
201506 6 2015 140 16
201507 7 2015 140 20
201508 8 2015 140 17
201509 9 2015 140 23
201510 10 2015 140 19
201511 11 2015 140 12
201512 12 2015 140 4
希望の結果?そして、私はこの文脈で「移動平均」という表現を理解していません。 – Strawberry
team_id = 23の月の201606に対する希望の結果は 7.25です。これは、平均して2,5,5,6,11,13,5,14,4,3,10,9である。 そして、その計算はteam_idでグループ化された月ごとに繰り返されます。 これは正しい方向への一歩ですが、私が実際にやっている答えは、今年は存在しません。 201512のteam_id 23の場合、その月は移動平均計算に0として含める必要があります。 Phil、 – Philip
それについては何が動いていますか?それはちょうど平均です! – Strawberry