我有一个 MySQL 表,其中有一列some_column
。此列设置为datetime
,更新时更新为NOW()
。
我想要做的是查询数据库,即some_column
值,并检查其中的任何内容与查询时的时间之间的时间差。我想看看是否超过了2个小时。
我如何用 PHP 做到这一点?还是我用 MySQL 来做?
我有一个 MySQL 表,其中有一列some_column
。此列设置为datetime
,更新时更新为NOW()
。
我想要做的是查询数据库,即some_column
值,并检查其中的任何内容与查询时的时间之间的时间差。我想看看是否超过了2个小时。
我如何用 PHP 做到这一点?还是我用 MySQL 来做?
SELECT IF(TIMEDIFF(NOW(),`some_column`) > '02:00:00',1,0) FROM `table`
或者,如果您尝试返回两个多小时前更新的行:
SELECT * FROM `table` WHERE `some_column` < DATE_ADD(NOW(),INTERVAL -2 HOUR)
<?php
$time = // Run query to get datetime value from db
$time = strtotime($time);
$dif = time()-$time;
$dif = date('H', $dif);
if($dif >= 2)
{
// Do something
}
?>