<p>MySQL随机数函数,MySQL生成某一范围随机数。有时候为了模拟数据需要生成一些随机数,下面小结一下:</p><p><strong>1、直接取值</strong></p><p>若要在i ≤ R ≤ j 这个范围得到一个随机整数R ,需要用到表达式 </p><pre class="brush:sql;toolbar:false">FLOOR(i + RAND() * (j – i + 1))</pre><p>例如, 若要在7 到 12 的范围(包括7和12)内得到一个随机整数, 可使用以下语句:</p><pre>SELECT FLOOR(7 + (RAND() * 6));</pre><p style="white-space: normal;">例如, 若要在1到 10 的范围(包括1和10)内得到一个随机整数, 可使用以下语句:</p><pre class="brush:sql;toolbar:false;">SELECT FLOOR(1 + (RAND() * 10));</pre><p><strong>2、创建函数</strong></p><pre class="brush:sql;toolbar:false">CREATE FUNCTION rand_num ( start_num INTEGER, end_num INTEGER) RETURNS INTEGERBEGIN RETURN FLOOR(start_num + RAND() * (end_num - start_num + 1)); END;</pre><p>比如,要获取1-9的随机数,如此调用即可:</p><pre class="brush:sql;toolbar:false">select rand_num(1,9);</pre>