我有一张表格如下
user
---------
id
created_on: DATETIME
我想让所有用户的当前时间和created_on时间之间的时差必须大于30分钟。 (created_on date time - current date time) > 30 minutes
如何在mysql中执行此操作。
答案 0 :(得分:2)
您可以利用MySQL函数TIMESTAMPDIFF
为您计算:
SELECT id,
created_on
FROM user
WHERE TIMESTAMPDIFF(MINUTE, created_on, NOW()) > 30
<强> Live DEMO. 强>
答案 1 :(得分:1)
SELECT * FROM user WHERE created_on < (NOW() - INTERVAL 30 MINUTE)
答案 2 :(得分:0)
您还可以使用date_sub
选项在列上使用date_add
或interval
。
select * from user
where created_on >= date_sub( now(), interval 30 minute);
与date_add
一起使用时的差异应为负数,例如: interval -30 minute
。
还有其他日期和时间功能,您可以使用它们获得相同的结果。