quindi per ottenere qualcosa del genere userei una sottoquery .. in questo modo stai solo inserendo RAND() sulla query esterna che sarà molto meno faticosa.
Da quello che ho capito dalla tua domanda vuoi 200 maschi dalla tabella con il punteggio più alto... quindi sarebbe qualcosa del genere:
SELECT *
FROM table_name
WHERE age = 'male'
ORDER BY score DESC
LIMIT 200
ora per randomizzare 5 risultati sarebbe qualcosa del genere.
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