mysql生成指定位數(shù)的隨機數(shù)及批量生成隨機數(shù)的方法
1. 先介紹幾個常用的 MySQL 函數(shù)
RAND() 隨機生成 0~1 之間的小數(shù)(0<1)
CEILING 向上取整
FLOOR 向下取整
2. 生成隨機數(shù)
-- 生成 3 位的隨機數(shù) SELECT CEILING(RAND()*900+100); -- 生成 4 位的隨機數(shù) SELECT CEILING(RAND()*9000+1000); -- 生成 5 位的隨機數(shù) SELECT CEILING(RAND()*90000+10000); ...
示例:
解釋一下:
-- 生成 0~1 之間的隨機小數(shù) 0 < RAND() <1 -- 乘以 9000,變成 0~9000 之間隨機小數(shù) 0 < RAND*9000 < 9000 -- 加上 1000,變成 0~10000 之間的隨機小數(shù) 0 < RAND*9000+1000 < 10000 -- 使用 CEILING 函數(shù)向上取整,去掉后面的小數(shù),得到一個整數(shù) -- 或使用 FLOOR 函數(shù)向下取整,都可以 CEILING(RAND()*9000+1000) -- 或 FLOOR(RAND()*9000+1000)
3. 注意
這種生成指定位數(shù)隨機數(shù)的方式還不是特別好,因為存在重復的可能。隨機數(shù)的位數(shù)越少,重復的概率越大。所以這種方式只能在特殊場合有些作用。
mysql批量生成隨機數(shù)
假數(shù)據(jù):
update exercise_data set star_num=FLOOR(1 + (RAND() * 5));
rand函數(shù)隨機生成0到1的隨機數(shù),乘以5即可得到1-5的隨機數(shù),floor是的到上一個整數(shù)。
以上所述是小編給大家介紹的mysql生成指定位數(shù)的隨機數(shù)的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
Can''t connect to local MySQL through socket ''/tmp/mysql.so
今天小編就為大家分享一篇關于Can't connect to local MySQL through socket '/tmp/mysql.sock'解決方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-03-03MySQL server has gone away錯誤提示解決方法
今天遇到類似的情景,MySQL只是冷冷的說:MySQL server has gone away。2008-11-11Windows Server 2003 下配置 MySQL 集群(Cluster)教程
這篇文章主要介紹了Windows Server 2003 下配置 MySQL 集群(Cluster)教程,本文先是講解了原理知識,然后給出詳細配置步驟和操作方法,需要的朋友可以參考下2015-06-06MySQL數(shù)據(jù)庫開發(fā)的36條原則(小結)
這篇文章主要介紹了MySQL數(shù)據(jù)庫開發(fā)的36條原則(小結),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-09-09