//This is my query
SELECT bline_id, ROUND(Avg(flow),3) avg
FROM (SELECT id, bline_id, flow, date, CASE
WHEN @previous IS NULL
OR @previous = bline_id THEN @rownum := @rownum + 1
ELSE @rownum := 1
end rn,
@previous := bline_id
FROM blf,
(SELECT @rownum := 0,
@previous := NULL) t
WHERE bline_id > 0 and bline_id < 31
ORDER BY bline_id,
date DESC,
id) t
WHERE rn < 11
GROUP BY bline_id
此查询取最后 10 条记录的平均值。我希望能够将这些结果保存回数据库,并在添加新记录时将它们与下一组 10 个进行比较。
我正在寻找的最终结果是能够判断平均值是否有 + 或 - 2% 的变化。这有意义吗?