使用WHERE子句中两个日期之间的差异

时间:2012-07-16 09:53:20

标签: mysql sql

我正在尝试在NOW()和NOW之间过滤一个SELECT查询 - 间隔10分钟(?),但我似乎无法使其工作,并且它给了我一些关于该主题的问题。 / p>

我在线查看了一些文档,并且有很多关于stackoverflow的问题,但是没有解决方案给我提供了我需要的东西。查看TIMEDIFF和TIMESTAMPDIFF文档,我只看到它像这样使用;

SELECT TIMESTAMPDIFF(SECOND,'2007-12-30 12:01:01','2007-12-31 10:02:00'); 

但是我不想只选择时差,我想在查询中将它用作WHERE子句,类似于;

SELECT * FROM tableName WHERE (the time difference betweeen NOW() and the stored timestamp is less than x minutes);

我需要将列设置为特定的数据类型吗? 我如何正确使用TIMEDIFF / TIMESTAMPDIFF,如果这些不是我应该使用的正确方法,那是什么?

2 个答案:

答案 0 :(得分:4)

SELECT * FROM tableName WHERE TIMESTAMPDIFF(MINUTE,timestamp,NOW()) < 10

答案 1 :(得分:2)

SELECT * FROM tableName 
WHERE now() - interval 10 minute < stored_timestamp