如果要指定指定范围的随机整数的话,需要用这个公式FLOOR(i + RAND() * j),比如
# 生成 7 - 11的随机数 SELECT FLOOR(7 + (RAND() * 5))
floor 地板取小于该值的最大整数 ,比如 0
mysql>select floor(1.23),floor(-1.23)
1 -2
ceiling 则相反,向上取整,取大于该值的最小整数 ,比如
SELECT CEILING(1.23)# 2
SELECT CEIL(-1.23)# -1
lpad 是左填充, 用法如下 :
LPAD(RAND()*31 + 1,2,'0')) # 取01-31的随机整数 ,保留两位,如果是一位,左边填0
mysql的rand函数可以生成一个0到1之间的随机数,进行一定的放大即可得到一个随机数。再通过条件查询来限制新随机数没有在表中出现过。如下所示:SELECT FLOOR(RAND() * 99999) AS random_numFROM numbers
WHERE "random_num" NOT IN (SELECT my_number FROM numbers)
LIMIT 1
有两种方式:1、用后台代码做个随机数,以php为例,
$randNum = rand(1,35)//获取1-35的一个随机数
mysql_query("insert into tablename (B) values($randNum)")
2.直接用mysql的函数实现1-35的随机数 floor( rand()*35)
sql语句就成这样的了 insert into tablename (B) values(floor( rand()*35)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)