4

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

我已经尝试过TIMEDIFF(),但我无法让它为我工作,请帮助。

4

2 回答 2

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

如果此查询返回非零值,则有此用户在最后一小时创建的行

于 2011-08-07T21:25:34.323 回答
1

获取用户的最新记录和与当前时间的时间差异x

SELECT
  tab.*,
  TIMEDIFF(NOW(), date_created) as diff
FROM tab
WHERE(userid = x)
ORDER BY date_created DESC
LIMIT 1
于 2011-08-07T21:37:27.443 回答