MySQL 生成给定范围随机数

MySQL 的 rand() 函数是随机生成区间为 [0,1) 的浮点数,那么如何让它生成给定两个整数之间的随机数呢?试了一下这样可行:

select ROUND(RAND()*(10-1)+1);  

也就是:

select ROUND(RAND()*(max-min)+min);  

经测可行。

如图:

一个实际应用场景:比如给分数为 0 的记录,随机生成 400 到 500 之间的分数:

update civil_activity set score=round(rand()*(500-400)+400) where score=0;  

这样就可以了。

原文出处:tanteng -> https://blog.tanteng.me/2017/10/mysql-rand-range/

本站所发布的一切资源仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如果侵犯你的利益,请发送邮箱到 [email protected],我们会很快的为您处理。