Podle dokumentace RAND(n) funguje správně, pouze pokud je n konstantní. Účinek použití nekonstantního argumentu není definován. Od MySQL 5.0.13 nejsou nekonstantní argumenty povoleny.
A jak se říká RAND() není myšleno jako dokonalý náhodný generátor. Je to rychlý způsob generování náhodných čísel na vyžádání, který je přenosný mezi platformami pro stejnou verzi MySQL.
Zkontrolujte, co se stane, když použijete RAND() bez parametru.