Mysql 表中没有数据的日期的移动平均值

Mysql 表中没有数据的日期的移动平均值,mysql,moving-average,Mysql,Moving Average,您好,我有下面的数据表,我在寻找移动平均线 原始数据 date qty 06/11/15 5 08/11/15 7 09/11/15 8 10/11/15 12 11/11/15 34 15/11/15 45 16/11/15 12 17/11/15 7 移动平均值应考虑最近90天的数据,并给出当前数据的平均值,如下标 Moving Average Data date qty mov

您好,我有下面的数据表,我在寻找移动平均线

原始数据

date    qty 
06/11/15    5   
08/11/15    7   
09/11/15    8   
10/11/15    12  
11/11/15    34  
15/11/15    45  
16/11/15    12  
17/11/15    7   

移动平均值应考虑最近90天的数据,并给出当前数据的平均值,如下标

Moving Average Data     
date    qty movingAvg
06/11/15    5   5
07/11/15    0   2.5
08/11/15    7   4
09/11/15    8   5
10/11/15    12  6.4
11/11/15    34  11
12/11/15    0   9.43
13/11/15    0   8.25
14/11/15    0   7.33
15/11/15    45  11.1
16/11/15    12  11.18
17/11/15    7   10.83
我正在使用的查询

SELECT t1.date,t1.qty, AVG(t2.qty) AS 'movingAvg'
FROM tbl t1
JOIN tbl t2 ON t1.company_id=t2.company_id 
AND DATEDIFF(t1.date, t2.date) BETWEEN 0 AND 90
WHERE t1.company_id=1234
GROUP BY t1.date
ORDER BY t1.date;

这就是忽略没有输入的日期,我也想包括它们。

使用MySQL
Str\u to\u date
就像这样

Str_to_date(t1.date,'%d/%m/%y')
或者改变这个

DATEDIFF(Str_to_date(t1.date,'%d/%m/%y'), Str_to_date(t2.date,'%d/%m/%y'))
MySQL
STR_TO_DATE()
函数将字符串转换为日期时间 价值观


首先,将日期存储为datesHi Rahauts,我想包括没有特定日期(如07,12,13,14)数据的条目