MySQL中的rand()函數(shù)用于生成一個隨機數(shù),其數(shù)值范圍位于[0,1)內(nèi)。
SELECT rand();
可以使用rand()函數(shù)在數(shù)據(jù)表中隨機取出某行數(shù)據(jù)。例如,針對一個名為"students"的數(shù)據(jù)表,可以使用以下代碼從中隨機取出一名學(xué)生。
SELECT * FROM students ORDER BY rand() LIMIT 1;
除了簡單的隨機化操作,rand()函數(shù)也可以用于創(chuàng)建特定的隨機數(shù)。例如,下面的代碼可以生成一個包含10到20之間整數(shù)的隨機數(shù)。
SELECT FLOOR(rand()*(20-10+1)+10);
在上述代碼中,F(xiàn)LOOR函數(shù)用于將浮點數(shù)nearest smaller integer后返回整數(shù)類型。rand()函數(shù)產(chǎn)生[0,1)之間的隨機數(shù),然后(20-10+1)求出隨機數(shù)的取值范圍,再乘上10,向下取整后再加10得到所需隨機數(shù)的范圍。