如何检测PHP/MySQL中是否经过了一定的时间?

如何检测PHP/MySQL中是否经过了一定的时间?,php,mysql,Php,Mysql,我在MySQL数据库中有一个时间戳,如下所示: 2011-02-23 20:39:49 如何检测自创建时间戳以来是否经过了一定的时间。换言之,如果时间戳是在2010年2月23日晚上8:39:43创建的,那么我如何检测自创建此时间戳以来是否已经过了整整10天(240小时)?如何在PHP中执行此操作?选择* $isDone = time() - strtotime($row['time']) >= 240 * 3600; 从桌子上 其中timestampcol

我在MySQL数据库中有一个时间戳,如下所示:

2011-02-23 20:39:49
如何检测自创建时间戳以来是否经过了一定的时间。换言之,如果时间戳是在2010年2月23日晚上8:39:43创建的,那么我如何检测自创建此时间戳以来是否已经过了整整10天(240小时)?如何在PHP中执行此操作?

选择*
$isDone = time() - strtotime($row['time']) >= 240 * 3600;
从桌子上 其中timestampcol
在SQL for MySQL中:

SELECT * FROM mytable WHERE DATE_ADD(date_column, INTERVAL 10 DAY) > NOW()
此查询将查找date列包含的datetime值比当前时间晚10天以上的任何行。

从表中选择\u时间戳SELECT the_timestamp < NOW() - INTERVAL 240 HOUR AS more_than_240_hours_ago FROM table

为什么不在SQL中执行此操作,MySQL可以比PHP更好地计算日期。@AndreKR我想在MySQL中执行此操作也可以,只要结果发送回PHP脚本即可。我所说的“结果”是指一个简单的是,它已经10天了,或者没有。你肯定想在MySQL中完成它。否则你会怎么做?选择整个表,从慢速硬盘上读取整个表,将整个表缓冲到内存中,通过套接字/管道将整个表发送到PHP,将整个表缓冲到内存中,然后遍历每一行并比较日期?不,您只需向MySQL查询超过10天的两行+1用于从现在起减去10天,而不是向列中添加10天。最好修改右侧日期时间而不是字段,因为向字段应用函数意味着无法使用该字段上的索引。Crikey。在澄清之前,我是在回答“如何在PHP中实现这一点?”。放轻松。如果你是说10天,你可以使用
INTERVAL 10 DAY
SELECT * FROM mytable WHERE DATE_ADD(date_column, INTERVAL 10 DAY) > NOW()
SELECT the_timestamp < NOW() - INTERVAL 240 HOUR AS more_than_240_hours_ago FROM table