0
mysqlデータベースに格納されているアクティビティログを、それぞれ登録されたdatetimeで取得しています。私は、60日以上経過したすべてのログを削除するための短いPHPスクリプトを作成しようとしています。時間を日時形式で比較しようとするのに問題があります。ここでPHPでMySQL Datetimeを使用して時刻を比較する
は、私が持っているものです。
$sixty_days_past = strtotime("-60 days");
$earliest_time = date("Y-m-d H:i:s", $sixty_days_past);
$logs_result = mysql_query("SELECT id FROM df_logs WHERE date < '$earliest_time'");
while($logs_row = mysql_fetch_array($logs_result)) {
$oldentry = $logs_row['id'];
mysql_query("DELETE FROM df_logs WHERE id='$oldentry'");
}
このクエリが間違っていますか?
(削除するには、IDをリストするためにこのような
IN
のように)非常に良い行にクエリの潜在的に結合していない数になり、時間、1つを削除するのではなく、一度にすべて削除されます。説明をありがとう。 :) – JROB