我们使用Mysql,我们试图从这样的小时数据集中获取最近两个工作日的平均值。
Date Price
2016-12-13 00:00 187,68
2016-12-13 01:00 201
2016-12-13 02:00 211,66
2016-12-13 03:00 215,84
所以我们创建了一个名为(Workdays)的表,显示这一天是工作日还是假日:
Date Workday
2016-12-13 1
2016-12-14 1
2016-12-15 0
2016-12-16 0
1表示工作日,0表示周末或国定假日
在和,我们要查询过去两个工作日的平均价格,单独考虑工作日表
这可能吗?
非常感谢。
答案 0 :(得分:1)
如果我理解正确,表endQuiz
每个日期确实只有一行。如果是这样,您可以在子查询中获取最近的两个工作日,然后使用workdays
选择第一个表中的行:
join
答案 1 :(得分:0)
试试这个
select W.Date, AVG(Price)
from Prices p
join Workdays W on
w.Date = DATE(P.Date)
AND Workday=1
and W.Date <= curdate()
group by W.Date
order by W.Date desc;