我有一个表格,其中包含我的应用程序中发生的事件,例如人们登录和人们更改设置。
他们有以下格式对事件的日期/时间:
2010-01-29 10:27:29
是否可以使用SQL来选择仅在最近5分钟内发生的事件?
所以如果日期/时间是2010-01-29 10:27:29那么它只会选择在10:27:29到10:22:29之间发生的事件?
干杯
EEF
答案 0 :(得分:3)
SELECT foo FROM bar WHERE event_time> DATE_SUB(NOW(),INTERVAL 5分钟)
(不确定是分钟还是分钟)
答案 1 :(得分:1)
WHERE my_timestamp < DATE_SUB(now(), INTERVAL 5 MINUTE)
答案 2 :(得分:0)
您应该提供表格和列名称,以便我们轻松回答您的问题。
您可以将SQL编写为
SELECT *
FROM Table
WHERE DateTimeColumnName <= '2010/01/29 10:27:29'
AND DateTimeColumnName >= '2010/01/29 10:22:29'
或者您可以使用BETWEEN
SELECT *
FROM Table
WHERE DateTimeColumnName BETWEEN '2010/01/29 10:22:29' AND '2010/01/29 10:27:29'
现在查看MySQL中是否有日期时间函数来执行日期数学,这样只需传递一个日期戳,然后进行数学运算从中减去5分钟,并将其用作between子句中的第二个参数。