mysql根据时间戳选择todo任务

时间:2015-02-24 07:40:25

标签: php mysql

我正在尝试使用当前时间从mysql db中选择todo行。请检查mysql查询如下...

SELECT * FROM todos WHERE status = "pending" AND date(now()) = date(ts) AND hour(now()) = hour(ts) AND minute(now()) = minute(ts) ORDER BY id ASC LIMIT 1

它工作正常,但有没有办法更好,更快地优化它?

感谢您的帮助。

1 个答案:

答案 0 :(得分:-1)

我认为看待它的时间晚于完成待办事项列表中的项目会更有意义。像这样:

SELECT * 
FROM todos 
WHERE status = "pending" AND 
      now() > ts
ORDER BY id ASC 
LIMIT 1

根据ts的类型,您可能需要稍微调整一下。