MySQL中生成随机数的函数是RAND,该函数还可以接收一个seed数(种子),返回一个0-1之间的小数(0<=x<1,大于等于0,小于1)。例如:
mysql> SELECT RAND(); RAND(): 0.4768667244136955 (生成随机数) mysql> SELECT RAND(7); RAND(): 0.40161898397060014 (生成随机数,种子数是7) mysql> SELECT RAND(-1.1); RAND(): 0.5774947773455593 (生成随机数,种子数是-1.1)
如果要生成随机正数,可以再使用FLOOR函数,例如要生成[a,b]之间的整数,(a<=x<=b),可以这样做:
SELECT FLOOR(RAND()*(b-a+1))+a;举例如下:
-- 生成80到100之前的随机整数 SELECT FLOOR(RAND()*(100-80+1))+80; -- 生成0-100之间的随机整数 SELECT FLOOR(RAND()*(100+0+1))+0; -- 也就是说: SELECT FLOOR(RAND()*(101));
https://www.techonthenet.com/mysql/functions/rand.php#:~:text=To%20create%20a%20random%20integer,generate%20a%20random%20number%20for.
文章评论