MySQL 的 rand() 函數是一個常用的隨機數生成函數,可以生成 0 到 1 之間的隨機小數。
SELECT rand();
如果需要生成整數類型的隨機數,則需要結合其他函數進行轉換,例如使用 floor() 函數向下取整:
SELECT floor(rand() * 10);
這條語句可以生成一個 0 到 9 的隨機整數。
如果需要生成一組不重復的隨機數,可以使用子查詢和 rand() 函數。例如需要從一個表中隨機選取幾條記錄:
SELECT * FROM table_name WHERE column_name IN ( SELECT column_name FROM table_name ORDER BY rand() LIMIT 10 )
這個語句會先在表中進行一次隨機排序,然后選取前 10 條記錄作為結果。由于排序是隨機的,因此每次執行結果會有所不同。