dus om zoiets als dit te krijgen, zou ik een subquery gebruiken ... op die manier zet je alleen de RAND () op de buitenste query, wat veel minder belastend is.
Van wat ik uit je vraag begreep, wil je 200 mannen van de tafel met de hoogste score... dus dat zou zoiets zijn als dit:
SELECT *
FROM table_name
WHERE age = 'male'
ORDER BY score DESC
LIMIT 200
om nu 5 resultaten willekeurig te maken, zou het ongeveer zo zijn.
SELECT id, score, name, age, sex
FROM
( SELECT *
FROM table_name
WHERE age = 'male'
ORDER BY score DESC
LIMIT 200
) t -- could also be written `AS t` or anything else you would call it
ORDER BY RAND()
LIMIT 5