mysql怎么生成不重复的随机数

mysql怎么生成不重复的随机数,第1张

MySql数据库随机函授Rand()可以产生0~1之间带小数的随机数,只要将括号中的参数留空,所产生的数是完全随机的,出现重复的几率不大,但是不可避免会有重复的可能,如果需要完全避免重复,可以先用随机函数产生一堆数字,然后用剔除其中的重复数这个办法来实现。

例如先用循环产生一批随机数并存入数据表中,再用

select distinct colName from tableName

选出无重复的随机数予以应用

mysql的rand函数可以生成一个0到1之间的随机数,进行一定的放大即可得到一个随机数。再通过条件查询来限制新随机数没有在表中出现过。如下所示:

SELECT FLOOR(RAND() * 99999) AS random_numFROM numbers

WHERE "random_num" NOT IN (SELECT my_number FROM numbers)

LIMIT 1

mysql中的通配符跟SQL是一样的,都是%表示任意个或多个字符。可匹配任意类型和长度的字符_表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句:(可以代表一个中文字符)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5901333.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-07
下一篇 2023-03-07

发表评论

登录后才能评论

评论列表(0条)

保存