Secondo la documentazione, RAND(n) funziona correttamente solo se n è costante. L'effetto dell'utilizzo di un argomento non costante non è definito. A partire da MySQL 5.0.13, gli argomenti non costanti non sono consentiti.
E come si suol dire, RAND() non è pensato per essere un perfetto generatore casuale. È un modo veloce per generare numeri casuali su richiesta che è portabile tra piattaforme per la stessa versione di MySQL.
Controlla cosa accadrà se usi RAND() senza parametro.