我希望计算可变日期的移动平均线。
我的数据库是结构化的:
id int
date date
price decimal
例如,我想知道19天后的平均价格是否会超过过去5天内40天的平均价格。每个时间段都是可变的。
我要坚持的是为子查询选择特定数量的行。
Select * from table
order by date
LIMIT 0 , 19
知道每天只有1个输入,我可以使用上面的子查询吗?在那之后问题似乎微不足道......
答案 0 :(得分:0)
如果您每天只有一个输入,则不需要ID,日期可以是您的主要ID吗?我错过了什么吗?然后使用选择总和
SELECT SUM(price) AS totalPrice FROM table Order by date desc Limit (most recent date),(furthest back date)
totalPrice/(total days)
我可能听不懂你的问题
答案 1 :(得分:0)
是的,你可以使用它作为这样的子查询:
SELECT
AVG(price)
FROM
(SELECT * FROM t ORDER BY date DESC LIMIT 10) AS t1;
这会计算最近10行的平均价格。