[英]Delete records that is greater than time()
我正在嘗試刪除20分鍾后過期的記錄,該列包含一個時間戳,該時間戳為time()+1200
(向前20分鍾)。
當我執行此查詢時:
$sql = "DELETE FROM " . SESSIONS_TABLE . "
WHERE session_expire >= " . time() . "
AND session_open = 1";
所有尚未通過時間戳記的記錄仍會被刪除...它是怎么做到的?
您可能要刪除小於 time()
。
您的WHERE條件不正確。 您需要使用..
WHERE session_expire <= " . time() . "
...否則,您將刪除設置為在提供的時間后過期的會話。
此外,如果數據庫服務器的時鍾位於相同的時區,則可以簡單地使用MySQL的NOW函數。
即:
WHERE session_expire <= NOW()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.