mysql的时差

时间:2011-08-07 21:22:25

标签: mysql date-arithmetic

我正在尝试用mysql做一些垃圾邮件过滤器。我想检查用户在表中创建的最后一条记录,并将其与当前时间进行比较。创建的时间以date_created格式存储为datetime

我试过了TIMEDIFF(),但我无法让它为我工作,请帮忙。

2 个答案:

答案 0 :(得分:3)

 SELECT count(*) FROM database WHERE date_created> NOW() - INTERVAL 1 HOUR AND user_id=17

如果此查询返回非零值,则此用户

在最后一小时创建行

答案 1 :(得分:1)

获取用户x

的最新记录和时间差异到当前时间
SELECT
  tab.*,
  TIMEDIFF(NOW(), date_created) as diff
FROM tab
WHERE(userid = x)
ORDER BY date_created DESC
LIMIT 1