MySQL中的RAND()函數(shù)使用詳解
MySQL RAND()函數(shù)調(diào)用可以在0和1之間產(chǎn)生一個(gè)隨機(jī)數(shù):
mysql> SELECT RAND( ), RAND( ), RAND( ); +------------------+-----------------+------------------+ | RAND( ) | RAND( ) | RAND( ) | +------------------+-----------------+------------------+ | 0.45464584925645 | 0.1824410643265 | 0.54826780459682 | +------------------+-----------------+------------------+ 1 row in set (0.00 sec)
當(dāng)調(diào)用一個(gè)整數(shù)參數(shù)時(shí),RAND()使用該隨機(jī)數(shù)發(fā)生器種子值。每次在給定值種子生成,RAND()會(huì)產(chǎn)生一個(gè)可重復(fù)的一系列數(shù)字:
mysql> SELECT RAND(1), RAND( ), RAND( ); +------------------+------------------+------------------+ | RAND(1 ) | RAND( ) | RAND( ) | +------------------+------------------+------------------+ | 0.18109050223705 | 0.75023211143001 | 0.20788908117254 | +------------------+------------------+------------------+ 1 row in set (0.00 sec)
可以使用ORDER BY RAND(),隨機(jī)組行或值如下:
要了解ORDER BY RAND()函數(shù), 假設(shè)EMPLOYEE_TBL的表有以下記錄:
mysql> SELECT * FROM employee_tbl; +------+------+------------+--------------------+ | id | name | work_date | daily_typing_pages | +------+------+------------+--------------------+ | 1 | John | 2007-01-24 | 250 | | 2 | Ram | 2007-05-27 | 220 | | 3 | Jack | 2007-05-06 | 170 | | 3 | Jack | 2007-04-06 | 100 | | 4 | Jill | 2007-04-06 | 220 | | 5 | Zara | 2007-06-06 | 300 | | 5 | Zara | 2007-02-06 | 350 | +------+------+------------+--------------------+ 7 rows in set (0.00 sec)
現(xiàn)在使用以下目錄:
mysql> SELECT * FROM employee_tbl ORDER BY RAND(); +------+------+------------+--------------------+ | id | name | work_date | daily_typing_pages | +------+------+------------+--------------------+ | 5 | Zara | 2007-06-06 | 300 | | 3 | Jack | 2007-04-06 | 100 | | 3 | Jack | 2007-05-06 | 170 | | 2 | Ram | 2007-05-27 | 220 | | 4 | Jill | 2007-04-06 | 220 | | 5 | Zara | 2007-02-06 | 350 | | 1 | John | 2007-01-24 | 250 | +------+------+------------+--------------------+ 7 rows in set (0.01 sec) mysql> SELECT * FROM employee_tbl ORDER BY RAND(); +------+------+------------+--------------------+ | id | name | work_date | daily_typing_pages | +------+------+------------+--------------------+ | 5 | Zara | 2007-02-06 | 350 | | 2 | Ram | 2007-05-27 | 220 | | 3 | Jack | 2007-04-06 | 100 | | 1 | John | 2007-01-24 | 250 | | 4 | Jill | 2007-04-06 | 220 | | 3 | Jack | 2007-05-06 | 170 | | 5 | Zara | 2007-06-06 | 300 | +------+------+------------+--------------------+ 7 rows in set (0.00 sec)
相關(guān)文章
如何用mysqldump進(jìn)行全量和時(shí)間點(diǎn)備份
這篇文章主要介紹了如何用mysqldump進(jìn)行全量和時(shí)間點(diǎn)備份,幫助大家更好的管理MySQL數(shù)據(jù)庫(kù),感興趣的朋友可以了解下2020-08-08
mysql查看表結(jié)構(gòu)的三種方法總結(jié)
這篇文章主要介紹了mysql查看表結(jié)構(gòu)的三種方法總結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07
Mysql sql慢查詢監(jiān)控腳本代碼實(shí)例
這篇文章主要介紹了Mysql sql慢查詢監(jiān)控腳本代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11
MySQL中冗余和重復(fù)索引的區(qū)別說(shuō)明
這篇文章主要介紹了MySQL中冗余和重復(fù)索引的區(qū)別說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03
詳解mysql?bit/json/enum/set?的數(shù)據(jù)存儲(chǔ)
這篇文章主要介紹了mysql?bit/json/enum/set?的數(shù)據(jù)存儲(chǔ),探究的主要內(nèi)容為 int 類(lèi)類(lèi)型的存儲(chǔ), 浮點(diǎn)類(lèi)類(lèi)型的存儲(chǔ), char 類(lèi)類(lèi)型的存儲(chǔ), blob 類(lèi)類(lèi)型的存儲(chǔ), enum/json/set/bit 類(lèi)類(lèi)型的存儲(chǔ),需要的朋友可以參考下2023-09-09
mysql 記錄不存在時(shí)插入 記錄存在則更新的實(shí)現(xiàn)方法
相信很多人都需要用到這個(gè)語(yǔ)句,請(qǐng)看下文:(在4.1以后的版本才有效)2008-08-08
解析MySQL創(chuàng)建外鍵關(guān)聯(lián)錯(cuò)誤 - errno:150
本篇文章是對(duì)MySQL創(chuàng)建外鍵關(guān)聯(lián)錯(cuò)誤-errno:150進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06

