随着时间查询mysql数据库

时间:2012-04-23 20:10:46

标签: mysql datetime

我想以这样的方式查询数据库,其中获取在给定时间内出现的所有行。 我的数据库表有一个Date列,它包含这样的数据

2012-04-23 08:39:10
2012-04-23 08:41:37
2012-04-23 13:49:56

我希望获得包含时间的所有行,例如5分钟之前。实际上我在这里尝试的是显示所有在线前5分钟在线的用户。这些日期和时间是使用上次活动创建的。 任何帮助将非常感谢。

3 个答案:

答案 0 :(得分:3)

这应该对你有用

select * from tablename where ((datecol > subtime(now(),'00:05:00')))

答案 1 :(得分:1)

以下内容应该可以解决问题:

SELECT * 
FROM <table> 
WHERE 
  <date column> 
    BETWEEN 
    DATE_SUB(NOW(), INTERVAL 5 MINUTE) 
    AND 
    DATE_SUB(NOW(), INTERVAL 6 MINUTE)
;

答案 2 :(得分:1)

SELECT *
FROM `TABLE_NAME`
WHERE `DATECOLUMN` > DATE_SUB(CURRENT_TIMESTAMP, INTERVAL 5 MINUTE)