SQL-如何仅使用最后N行中的值来查找列的平均值

Chi*_*raj 1 mysql sql average

我有一个看起来像这样的数据表.

datestamp   timestamp   vix    
2015-05-13   16:30:00   18.0     
2015-05-14   16:30:00   19.2
2015-05-15   16:30:00   18.5
2015-05-18   16:30:00   17.5
2015-05-19   16:30:00   17.0
Run Code Online (Sandbox Code Playgroud)

我想获得最近3天的列vix的平均值(avg()).我知道如何使用这样的查询获取最后3行

select vix from my_table order by date desc limit 3
Run Code Online (Sandbox Code Playgroud)

我怎样才能进一步计算过去3天的平均值?任何帮助,将不胜感激.

jar*_*rlh 5

使用派生表:

select avg(dt.vix)
from
(select vix from my_table order by date desc limit 3) dt
Run Code Online (Sandbox Code Playgroud)