在MySQL
中,在使用MySQL時,可能需要在某些情況下生成一個指定範圍內的隨機值。在存在rand()函數時,它無法滿足此要求。 This article delves into the best approach for achieving this in MySQL.
Solution:
The optimal method in MySQL to generate a random value within a specified range is:
ROUND((RAND() * (max-min)) min)
RAND()
ROUND((RAND() * (max-min)) min)
max
:所需範圍的最大值。 - 與php實現進行比較: mysql解決方案的php等同於:
示例查詢- addendum:permastion compalison 要進一步說明性能差異,以下php腳本運行: = rand($ r [0],$ r [1]);
}
$ end = microtime(1);
結果表明,如果僅需要隨機值,則mySQL對於生成隨機值的速度更快,但是如果返回其他列,則較慢。