gpt4 book ai didi

php - 使用 MySQL Datetime 比较 PHP 中的时间

转载 作者:行者123 更新时间:2023-11-29 14:29:29 25 4
gpt4 key购买 nike

我的 mysql 数据库中存储有事件日志,每个日志都有一个已注册的日期时间。我正在尝试编写一个简短的 php 脚本来删除所有超过 60 天的日志。我在尝试比较日期时间格式的时间时遇到问题。

这是我所拥有的:

$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'");

}

这个查询有什么问题?

最佳答案

一切。

DELETE FROM `df_logs` WHERE `date` < DATE_ADD(NOW(),INTERVAL -60 DAY)

完成。

<小时/>

详细说明:

  • 当 MySQL 完全有能力进行正确的计算时,您正在使用 PHP
  • 您没有将字段名称括在反引号中,这是一个问题,因为 date是一个关键字。
  • 您一次删除一行,这可能会导致查询数量不受限制,而不是一次全部删除(例如使用 IN 列出要删除的 ID)

关于php - 使用 MySQL Datetime 比较 PHP 中的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10290182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com