如何比较MySQL的两个DATETIME

时间:2013-05-13 14:35:56

标签: php mysql datetime date-parsing

我想限制我的用户每15分钟只能(能够)发布一些内容。

因此,在我的SQL查询中,我选择NOW()来获取当前日期和时间,以及用户的上次发布日期date_added。我想比较两个日期,如果now()date_added之间的差异小于15分钟,那么用户还无法发帖。如果它更大,他就可以。如果不到15分钟,那么我想要一条消息,比如'请等待x分钟和y秒'。所以我需要某种日期操作/比较。

我应该如何处理这个问题。在MySQL还是PHP?

3 个答案:

答案 0 :(得分:2)

你可以简单地将mysql时间戳转换为php-date并从那里进行比较 $ time = date(“Y-m -d H:i:s”,$ mysqltime);

您会发现许多有用的摘录如何比较函数文档中的日期:http://php.net/manual/de/function.date.php

编辑:pozs anwser指甲......

答案 1 :(得分:1)

这样的东西

SELECT count(*) FROM posts WHERE last_post > DATE_SUB(NOW(), INTERVAL 15 minute);

答案 2 :(得分:1)

在MySQL中:DATE_ADD()DATE_SUB(),然后进行比较。

在PHP中:DateTime->diff()