简体   繁体   English

从 1 小时前选择的 Sql 查询?

[英]Sql query to select from 1 hour ago?

I have this query but I want to change the date to delete everything that is from more than 1 hour ago based on the server time (or if not possible by server time by post date).我有这个查询,但我想更改日期以根据服务器时间删除超过 1 小时前的所有内容(或者如果不可能按发布日期按服务器时间)。 How do I do that?我怎么做?

DELETE FROM wp_posts
 WHERE post_date < '2008-06-06 19:18:00' 
   AND post_status = 'publish'

Use:使用:

DELETE FROM wp_posts
 WHERE post_date < DATE_SUB(NOW(), INTERVAL '1' HOUR)
   AND post_status = 'publish'

Reference:参考:

Or even simpler:或者更简单:

SELECT NOW() - INTERVAL 1 HOUR;

So the query becomes:所以查询变成:

DELETE FROM wp_posts
 WHERE post_date < NOW() - INTERVAL 1 HOUR
   AND post_status = 'publish'

子日期功能也适用!

SELECT subdate(current_timestamp, interval 1 hour)
DELETE from  table where date_add < NOW() - INTERVAL 1 HOUR;

查看运行此 sql 的时间:

select NOW() - INTERVAL 1 HOUR as s1 , NOW() as s2;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM