记录一次打乱数据库插入时间的sql语句

由于前期本地联调测试新建了一堆测试数据,

但是由于插入时间都一样页面展示效果不太友好,

逐个或区间更新时间又很麻烦,

所以有了笔者这篇文章。

话不多说,直接上实例,下面有注释说明。

=======================================更新随机日期+时间=============================================

#查询操作时间
select creattime from sys_log

-- 00点至00点,24小时制。

-- 区间=24小时=86400秒

-- 下面更新时间 = '2020-01-01 00:00:00' 之后的 随机秒数。(区间在 1- 86400 之间)

--笔者这里更新日期范围在2020-11-06到2020-11-26的范围

-- 区间= 20天

-- 下面更新日期 = '2020-01-01 随机时间' 之后的  随机天数。 (区间在 310(一年中已过天数-区间21)-21(需要更新范围) 之间)

#按时间段随机更新时间
UPDATE sys_log
SET
  creattime = 
    DATE_ADD(
        DATE_ADD('2020-01-01 00:00:00',  INTERVAL  FLOOR(1 + (RAND() * 86400))   SECOND ),
INTERVAL  FLOOR(310 + (RAND() * 21))   DAY);

=====================================指定日期,随机时间================================================

指定某一天,更新随机时间,和上边一样的,10800秒指3小时,更新三小时内随机时间

UPDATE sys_log set creattime=ADDTIME(DATE('2020-11-27')+INTERVAL  FLOOR(1 + (RAND() * 10800))   SECOND,TIME(creattime)) where icreattime>'2020-10-21' ;

====================================更改指定日期,时间不变==============================================

#指定日期,时间不变
update sys_log
set creattime = ADDTIME (date('2020-11-27') + interval +0 hour,time(creattime)) WHERE creattime>'2020-07-31 00' and creattime<'2020-08-12 00';

===================================更新为当前日期======================================================

#改为当前日期
update sys_log 
set creattime = ADDTIME (CURDATE() + interval 0 hour,time(creattime))  where creattime>'2020-06-01';

=====================================================================================================

附加替换某一字段内容语句

将某一字段内容包含‘aaa’的内容替换为‘bbb’

update `sys_log` SET content=REPLACE(content,'aaa','bbb') where content LIKE 'aaa';

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值