我想以这样一种方式查询数据库,即获取在给定时间内出现的所有行。我的数据库表有一个日期列,其中包含这样的数据
2012-04-23 08:39:10
2012-04-23 08:41:37
2012-04-23 13:49:56
我想获取所有包含 5 分钟前时间的行。实际上,我在这里尝试的是显示 5 分钟前在线的所有用户。这些日期和时间是使用它们的最后一个活动创建的。任何帮助将不胜感激。
这应该适合你
select * from tablename where ((datecol > subtime(now(),'00:05:00')))
像下面这样的东西应该可以解决问题:
SELECT *
FROM <table>
WHERE
<date column>
BETWEEN
DATE_SUB(NOW(), INTERVAL 5 MINUTE)
AND
DATE_SUB(NOW(), INTERVAL 6 MINUTE)
;
SELECT *
FROM `TABLE_NAME`
WHERE `DATECOLUMN` > DATE_SUB(CURRENT_TIMESTAMP, INTERVAL 5 MINUTE)