四,RAND()与RAND(N)区别
每个种子产生的随机数序列是不同的,如果传入N参数执行RAND(N),则每次查询到的随机数都是固定的,如果没有传入N参数,则每次都是随机的值。如下所示:
mysql> SELECTRAND(),RAND(5); +--------------------+---------------------+ | RAND() | RAND(5) | +--------------------+---------------------+ | 0.7946587333405938 | 0.40613597483014313 | +--------------------+---------------------+ 1 row in set (0.00 sec) mysql>SELECT RAND(),RAND(5); +---------------------+---------------------+ | RAND() | RAND(5) | +---------------------+---------------------+ | 0.12910866749389904 | 0.40613597483014313 | +---------------------+---------------------+ 1 row in set (0.00 sec) mysql> SELECT RAND(),RAND(5); +-------------------+---------------------+ | RAND() | RAND(5) | +-------------------+---------------------+ | 0.261567168181359 | 0.40613597483014313 | +-------------------+---------------------+ 1 row in set (0.00 sec) mysql> SELECT RAND(),RAND(5); +--------------------+---------------------+ | RAND() | RAND(5) | +--------------------+---------------------+ | 0.9205098691587428 | 0.40613597483014313 | +--------------------+---------------------+ 1 row in set (0.00 sec) mysql> SELECT RAND(),RAND(5); +--------------------+---------------------+ | RAND() | RAND(5) | +--------------------+---------------------+ | 0.8178478719832821 | 0.40613597483014313 | +--------------------+---------------------+ 1 row in set (0.00 sec) mysql>