MySql数据库SQL命令指定时间范围批量修改WordPress文章发布时间

自己修改好起始时间“2014-01-01”、随机日期范围“500天”、文章ID范围起始ID 6297结束ID 14332 修改为你自己的
然后依次执行以上SQL语句即可,可以随机生成ID范围内的文章的发布日期。


UPDATE `wp_posts` SET `post_date` = DATE_ADD('2014-1-01', INTERVAL ROUND(RAND() * 500 + 1) DAY)  WHERE `ID` between 6297 AND 14332;

update `wp_posts` set `post_modified` = `post_date` WHERE `ID` between 6297 AND 14332;

update `wp_posts` set `post_date_gmt` = `post_date` WHERE `ID` between 6297 AND 14332;

update `wp_posts` set `post_modified_gmt` = `post_modified` WHERE `ID` between 6297 AND 14332;

update `wp_posts` set `post_status` = 'publish' WHERE `ID` between 6297 AND 14332


第二部份:mysql对时间日期字段值进行逐个递增。

参考:https://blog.csdn.net/u013091257/article/details/78676929


set  @rownum =0;

UPDATE tableA SET create_date=DATE_ADD(create_date, INTERVAL+(@rownum := @rownum +1) SECOND)

2016-09-26 16:22:42
2016-09-26 16:22:43
2016-09-26 16:22:44
2016-09-26 16:22:45
...


2016-09-26 16:23:00
2016-09-26 16:23:01


第三部份

参考:

https://zhidao.baidu.com/question/937350334685356492.html?fr=iks&word=DATE_ADD++INTERVAL+1+DAY++%B5%DD%D4%F6&ie=gbk 

这个函数只能一个个加
 
比如先加天:
SELECT OrderId,DATE_ADD(日期字段,INTERVAL 1 DAY) AS 新名字 FROM Orders
 
在天的基础上再加月:
SELECT OrderId,DATE_ADD(DATE_ADD(日期字段,INTERVAL 1 DAY),INTERVAL 1 MONTH) AS 新名字 FROM Orders
 
以此类推。。。。。。。。。
====================
2015-03-24
SELECT DATE_ADD(NOW(),INTERVAL -1 DAY);
结果是2015-03-23 17:47:59

如果这里面的时间字段是记录的创建时间,你这个查的就是24小时内的记录啊!


最后缩合以上参考:wordpress 发布日期自动增加一天的代码如下

set  @rownum =1;
UPDATE `wp_posts` SET `post_date` = DATE_ADD('2010-09-01',  INTERVAL+(@rownum := @rownum +1)  DAY)  WHERE `ID` between 1 AND 7000;

update `wp_posts` set `post_modified` = `post_date` WHERE `ID` between 1 AND 7000;

update `wp_posts` set `post_date_gmt` = `post_date` WHERE `ID` between 1 AND 7000;

update `wp_posts` set `post_modified_gmt` = `post_modified` WHERE `ID` between 1 AND 7000;

update `wp_posts` set `post_status` = 'publish' WHERE `ID` between 1 AND 7000
然后依次执行以上SQL语句即可

你可能感兴趣的:(MySql数据库SQL命令指定时间范围批量修改WordPress文章发布时间)