mysql随机时间_MYSQL执行sql语句,批量更改为指定时间段的随机时间

什么叫  “直接放在sql运行呢”  ?

难道我上面贴的语句, 都不是 sql 语句?

上面第一行, 创建一个测试表

后面 插入5行测试数据。   时间为  2012-11-13 1点到5点。

然后就是一条更新用的 sql 语句。

就是在 mysql  命令行下面, 输入的语句啊。

没有用其它的语言来折腾啦。

至于你问的  “这样好像日期没有换了吗?”

我又去看了看你的那个题目, 发现还有个日期区间的限制条件。

我这里就  删除表, 重建表, 插入相同的测试数据以后, 执行下面的 SQL-- 20点至23点。

-- 区间=3小时=180分钟=10800秒

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

-- 2012-5-1到2013-6-6的范围

-- 区间= 401 天

-- 下面更新日期 = '2012-05-01 随机时间' 之后的  随机天数。 (区间在 1-401 之间)

UPDATE test_random_time

SET

newstime =

DATE_ADD(

DATE_ADD('2012-05-01 20:00:00',  INTERVAL  FLOOR(1 + (RAND() * 10800))   SECOND ),

INTERVAL  FLOOR(1 + (RAND() * 401))   DAY)

WHERE

DATE(newstime) = '2012-11-13';

mysql> SELECT * FROM test_random_time;

+------+---------------------+

| id   | newstime            |

+------+---------------------+

|    1 | 2012-09-04 20:53:06 |

|    2 | 2012-10-31 22:02:11 |

|    3 | 2013-04-05 20:43:37 |

|    4 | 2013-05-13 21:29:02 |

|    5 | 2012-08-14 20:38:56 |

+------+---------------------+

5 rows in set (0.00 sec)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值