gpt4 book ai didi

MySQL DATETIME DIFF 查询

转载 作者:IT王子 更新时间:2023-10-29 00:32:00 26 4
gpt4 key购买 nike

我有一个 MySQL 查询,每 30 分钟通过 cron 运行一次以删除旧的属性列表,查询是:

 DELETE FROM $wpdb->posts WHERE post_type = 'rentals' AND DATEDIFF(NOW(), post_date_gmt) >=2  

现在它处于测试阶段,并设置为在列表发布 2 天后删除,这没有问题,我确实遇到的问题是我需要它来识别发布列表的时间以及应该删除的时间,

基本上 post_date_gmt 的表格列格式为 2011-05-26 13:10:56 列类型为 DATETIME 当我运行 DATEDIFF (NOW() 查询时,它需要等于从当前时间起 48 小时或更长时间才能删除列表,这没有发生,查询似乎只是说“这是第 2 天,删除列表”,所以它被删除了,这可能只有 24 个半小时,我怎样才能让它完整地显示 48 小时?

问候

最佳答案

尝试使用 48 小时增量的 timediff。如果精度不是问题,或者使用 3 天的增量。

试试 HOUR(TIMEDIFF(NOW(), date))

SELECT count(*) FROM $wpdb->posts WHERE post_type = 'rentals' AND HOUR(TIMEDIFF(NOW(),  post_date_gmt)) >=48

MySQL 有很多日期/时间函数: http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_hour

注意:在尝试 DELETE 之前使用 SELECt

关于MySQL DATETIME DIFF 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6410642/

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