Você pode usar
rand()
, mas o desempenho é terrível select * from users order by rand() limit 5; <-- slow
Eu sugeriria armazenar a lista de todos os IDs de usuário em uma matriz de serialização e armazenar em cache em um arquivo de disco. (atualização periódica)
Então, você pode deserializá-lo novamente usando PHP e usar PHP
array_rand
para escolher 5 usuários aleatórios. Para buscar as informações completas, você pode fazer
select * from users where user_id in(...); <-- very fast