若要:在 i<=R<=j,这个范围得到一个随机整数R,需要用到

floor(i+rand()*(j-i+1))

例如:得到7-12这个范围(包括7和12)内一个随机整数。

select floor(7 + (rand()*6)  )

例如:在用户表中随机取一个用户id [1,10]

select id from user where id = floor(1+ (rand()*10)  )

说明:rand() 方法效率较低,Mysql 后序版本可能会优化,谨慎使用。

参考:​http://www.fengyunxiao.cn">​http://www.fengyunxiao.cn​