Можете да използвате rand()
, но представянето е ужасно
select * from users order by rand() limit 5; <-- slow
Бих предложил да съхранявате списък с всички потребителски идентификатори в сериализиран масив и да кеширате в дисков файл. (периодично актуализиране)
Така че можете да го де-сериализирате обратно с помощта на PHP и да използвате PHP array_rand
за да изберете 5 произволни потребители.
За да извлечете пълната информация, можете да направите
select * from users where user_id in(...); <-- very fast