如何在最后n分钟获得速度

时间:2015-02-28 02:13:41

标签: mysql sql

我正在尝试执行以下操作来计算工作速度:

SELECT (count(*) / 1) velocity FROM mutable 
  WHERE timestamp > DATE(NOW()-INTERVAL 1 minute)

然而,这似乎是一个错误的结果。这里有什么问题,我将如何正确地进行此查询?

2 个答案:

答案 0 :(得分:1)

使用date()时,您要将值转换为日期。当你减去一分钟时,这似乎很奇怪。如果您想要最近一分钟的计数,请尝试:

SELECT (count(*) / 1) as velocity
FROM mutable 
WHERE timestamp > DATE_SUB(NOW(), INTERVAL 1 minute);

答案 1 :(得分:0)

问题是你要在DATE()中包装表达式,这将返回与一天开始时间相对应的时间戳,即yyyy-mm-dd 00:00:00。因此,您的表达式只会每天更改。

您可以使用DATE_SUB()

timestamp > DATE_SUB(NOW(), INTERVAL 1 minute)