mysql 生成范围随机数

mysql 的 rand()方法可以生成 [0,1) 的小数,通过 rand() * n 可以得到 [0,n)的数字

通过 ceil 向上取整或 floor向下取整,可以得到整数

例如,像取得 [7, 13] 范围的整数:

select ceil(7+rand()*6);

rand() * 6 的范围是 [0,6),此时+ 7 得到 [7,13),通过 ceil方法向上取整,有可能得到 13,故能得到预期的 [7,13]。

实例:让test表的tes字段随机增加[7,3]

update `test` set `tes`=`tes`+ceil(7+rand()*6)

每条记录增加的值是随机的,比如已有3条记录 2,2,2,则可能变成 10、15、13

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注