按时间限制SQL结果,MySQL

按时间限制SQL结果,MySQL,sql,mysql,datetime,Sql,Mysql,Datetime,我有一个表,其中包含在我的应用程序中发生的事件,如用户登录和用户更改设置 他们有以下格式的事件日期/时间: 2010-01-29 10:27:29 是否可以使用SQL选择仅在过去5分钟内发生的事件 那么,如果日期/时间是2010-01-29 10:27:29,它将只选择发生在10:27:29和10:22:29之间的事件 干杯 Eef您应该提供表名和列名,以便我们方便地回答您的问题 您可以将SQL编写为 SELECT * FROM Table WHERE DateTimeColumnName &

我有一个表,其中包含在我的应用程序中发生的事件,如用户登录和用户更改设置

他们有以下格式的事件日期/时间:

2010-01-29 10:27:29
是否可以使用SQL选择仅在过去5分钟内发生的事件

那么,如果日期/时间是2010-01-29 10:27:29,它将只选择发生在10:27:29和10:22:29之间的事件

干杯


Eef

您应该提供表名和列名,以便我们方便地回答您的问题

您可以将SQL编写为

SELECT *
FROM Table
WHERE DateTimeColumnName <= '2010/01/29 10:27:29'
AND  DateTimeColumnName >= '2010/01/29 10:22:29'

现在看看MySQL中是否有datetime函数来进行日期计算,所以只需传递一个日期戳,然后进行计算,从中减去5分钟,并将其用作BEVERY子句中的第二个参数。

您应该提供表名和列名,以便于我们回答您的问题

您可以将SQL编写为

SELECT *
FROM Table
WHERE DateTimeColumnName <= '2010/01/29 10:27:29'
AND  DateTimeColumnName >= '2010/01/29 10:22:29'

现在看看MySQL中是否有datetime函数来进行日期计算,所以只需传递一个日期戳,然后进行计算,从中减去5分钟,并将其用作BEVERY子句中的第二个参数。

从bar WHERE event\u time>Date\u SUB(现在(),间隔5分钟)中选择foo


(不确定是分钟还是分钟)

从事件时间>日期子项所在的栏中选择foo(现在(),间隔5分钟)

(不确定是分钟还是分钟)

其中我的时间戳
其中我的时间戳
这是
分钟
也可以缩短:
从事件时间>的栏中选择foo(现在()-间隔5分钟)
感谢您的添加和说明。无论如何,可能是我的C语言背景,但我更喜欢DATE_SUB,因为我发现它更容易阅读,尤其是在更复杂的查询中。它是
分钟
,也可以缩短:
从bar WHERE event_time>中选择foo(现在()-间隔5分钟)
感谢您的添加和澄清。无论如何,可能是我的C语言背景,但我更喜欢DATE_SUB,因为我发现它更容易阅读,尤其是在更复杂的查询中。
WHERE my_timestamp < DATE_SUB(now(), INTERVAL 5 MINUTE)