PHP / mySQL选择查询比较时间&将查询限制为仅在5分钟内

时间:2017-01-29 22:59:57

标签: php mysql

我正在编写一个脚本,用于从DB中选择仅在5分钟(或任何其他设定时间量)内查询的里程碑。我有一些问题。

  1. 日期以这种格式存储在数据库中:

    例如:2016-12-05 21:19:00

  2. 运行此查询时:

    SELECT * FROM里程碑WHERE status ="计划"和时间> =现在()

  3. 我能够在将来获得所有内容的结果,但是我将如何限制查询,例如只说5分钟。

1 个答案:

答案 0 :(得分:3)

您可以使用BETWEENDATE_ADD MySQL函数来实现所需的结果,例如:

SELECT * 
FROM milestones 
WHERE status="planned" and time BETWEEN NOW() AND DATE_ADD(NOW(), INTERVAL 5 MINUTE)

这将打印所有日期在当前日期和下一个5分钟之间的条目。

如果要在最后5分钟内打印相同内容,可以使用以下内容:

SELECT * 
FROM milestones 
WHERE status="planned" and time BETWEEN DATE_SUB(NOW(), INTERVAL 5 MINUTE) AND NOW()

这是MySQL DATE_ADDBETWEEN的文档。