我正在使用以下代码从表中返回一个随机行。使用字段'rand'。
SELECT *
FROM imgs
WHERE rand > RAND( )
ORDER BY rand ASC
LIMIT 1
字段'rand'是由mysql在创建时使用类似于:
的东西生成的INSERT INTO imgs SET rand = RAND ()
由于某种原因,虽然每次运行更改结果只是具有非常低''rand'字段的行。绝对有超过7,000行的完整系列。如果我更换'WHERE rand>接缝可以正常工作兰德()'与'WHERE rand> [0-1之间的数字]'
答案 0 :(得分:0)
RAND()
生成浮点值x,其中0 <= x&lt; 1.0 ...以生成更大的数字(整数)使用FLOOR(y + (RAND() * z))
,其将生成值x,其中y <= x&lt; (Y + Z)