2015-02-11 56 views

回答

0

使用MySql Date功能

SELECT DATEDIFF(dateColumn, NOW()) as "diff" FROM tableName HAVING diff < 1; 

未測試


在PHP(使用PDO):

$query = $db->prepare('SELECT `dateColumn` FROM `tableName`'); 
$query->execute(); 
$result = $sth->fetchAll(PDO::FETCH_CLASS); 

foreach ($result as $date) { 
    $time = strtotime($date->dateColumn); 

    if (time() - $time < 60 * 60 * 24) { 
     // It's less than 24h ago; 
    } else { 
     // It's more than 24h ago; 
    } 
} 

只需爲PDO設置正確的參數即可將行作爲對象提取。

+0

謝謝您的回答,我需要用PHP來做到這一點,對不起,如果我不太清楚 – user3174311 2015-02-11 12:59:41

+0

@ user3174311你知道嗎你可以用'mysqli_ *'或'PDO'函數在PHP中編寫MySql命令? – Justinas 2015-02-11 13:09:08

+0

@ user3174311檢查更新回答 – Justinas 2015-02-11 13:15:00

1

試試這個:

SELECT 
IF(yourDate<DATE_SUB(NOW(), INTERVAL 1 DAY), 1, 0) AS expired 

或本:

SELECT 
IF(yourDate<DATE_SUB(NOW(), 24 HOUR), 1, 0) AS expired