酷符网数据库 > 正文

mysql生成某一范围的随机整数

2011-01-01 21:48codeif.com

mysql有随机函数rand(),会生成大于等于0,小于1(0到1)之间的小数

按照一般的思路就是 0到1的随机数乘以一个我们要随机范围,然后取整就可以,mysql中有round和floor函数都可以把小数变为整数整数

FLOOR(X)
返回不大于X的最大整数值。

ROUND(X,D)
返回参数X的四舍五入的有D为小数的一个数字。如果D为0,结果将没有小数点或小数部分。

看上面的解释,我们用floor(x)函数就够用了

例如我们要0-99的随机数,只要下面的sql语句就可以了

select floor(rand()*100);

1到99的随机数就是

select floor(1+rand()*99);

所以要mysql随机m到n之间的整数用下面的的形式的sql语句就可以了

select floor(m+rand()*[n-m+1]);

相关文章

新浪微博 | 淘段子 | 我的博客 | 淘宝店铺 | jnan.org | RSS
Copyright © 2009 - 2011 酷符网