Puedes usar rand()
, pero el rendimiento es terrible
select * from users order by rand() limit 5; <-- slow
Sugeriría almacenar la lista de todos los ID de usuario en una matriz de serialización y almacenar en caché en un archivo de disco. (actualización periódica)
Por lo tanto, puede volver a serializarlo usando PHP y usar PHP array_rand
para elegir 5 usuarios al azar.
Para obtener la información completa, puede hacer
select * from users where user_id in(...); <-- very fast