采集了几千万条数据,同时发布上去的,生成静态。结果它NND全在一个日期文件夹下。what a FK!
有办法了,先别急!
1 2 |
update dede_archives set pubdate= 1522368606 where id>=1 and id<=5;<br> update dede_archives set senddate= 1522368606 where id>=1 and id<=5; |
解释:上面两行代码,功能就是把ID号从1到5的文章发布日期由2018年3月30日。
其中“pubdate= 1522368606 ”和“senddate= 1522368606” 中的数字为“Unix时间(Unixtimestamp) ” 这个把日期转换成时间戳的地址,
在线工具获得Unix时间戳:http://tool.chinaz.com/Tools/unixtime.aspx
看明白了吗?
知道乍用了吗? 没看懂的去撞墙!
还有更牛X的!
1 2 |
update dede_archives set pubdate=FLOOR(UNIX_TIMESTAMP('2018-03-01 00:00:00') + RAND() * (2592000)) where id>=6 and id<=546;<br> update dede_archives set senddate=FLOOR(UNIX_TIMESTAMP('2018-03-01 00:00:00') + RAND() * (2592000)) where id>=6 and id<=546; |
一天是86400
一个月是86400*30=2592000
——————–说明案例:
1 |
update dede_archives set pubdate=FLOOR(UNIX_TIMESTAMP('2016-04-19 00:00:00')-46800 + RAND() * (86400)) where id>=8300 ; |
这条语句的意思指定时间段随机生成更新时间,里面有三个标红的位置,一个是“-46800”因为我的网站“经验分享网”用的是美国的主机,有13个小时的时差,所以-46800秒。如果你用的主机是中国的话,就可以把这个时间差的值给去掉。“86400”折算出来就是24个小时。这样就可以理解随机的时间是“2016-04-19 00:00:00”至“2016-04-19 23:59:59”。“8300”就是你的文章ID 。黑色显示的时间与这三个红色标红都可以根据自己的需要进行修改。
1 |
update dede_arctiny t set senddate=(select senddate from dede_archives where t.id=id) where id>=8300 ; |
这条语句是更新了“一键生成”功能用到的更新时间,这个语句是把dede_arctiny表与dede_archives表时间设置为一致 。
另外需要说明的是dede_archives这个表里有两个个时间 ,pubdate文章更新时间,senddate数据产生的时间。只要修改pubdate的时间就可以让文章前台显示更新时间为这个时间,如果你想把senddate的时间也要与文字时间一致那你就再执行下面的语句就可以了 。
1 |
update dede_archives set senddate=pubdate where id>=8300 and arcrank=-1; |