我在MySQL数据库中有一些历史数据,并且正在制作它的图形。目前,我的图形如下所示:
但是,我想获得随时间变化的值-即显示自上次测量以来的变化。这样的事情(显然数据不正确):
与上一行比较时,如何编写一个获取值增量的MySQL查询?
这是我当前的查询,在juergen d的帮助下:
SELECT `timestamp`, total_users, total_users - @prev AS col1, @prev := total_users, FROM stats, (select @prev := 0) p GROUP BY DAY(`timestamp`), floor(HOUR(`timestamp`)/2)
使用保存最后记录值的变量来计算增量
select some_column,
some_column - @prev as delta,
@prev := some_column
from your_table, (select @prev := 0) p
SELECT DAY(`timestamp`) as day_ts,
floor(HOUR(`timestamp`)/2) as hour_ts
sum(total_users)
sum(total_users) - @prev AS col1,
@prev := sum(total_users)
FROM stats, (select @prev := 0) p
GROUP BY day_ts, hour_ts
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句