shred:
надо среди результатов каждого участника найти лучший и представить лучшие результаты участников
А мой-то запрос тебе чего не нравится?
select y.nick, y.id, MIN(p.time), p.action_date
from участниками у INNER JOIN результаты р ON у.id=р.nick_id
group by у.id, p.action_date DESC
ORDER BY 3
Я кстати в первый раз перепутал MIN c MAX\'ом....
Этот запрос выберет минимальное время для каждого участника
и выдаст его ид\'шник, ник, это самое время и наиболее позднюю дату когда это свершилось, если у него 2 одинаковых времени (если уберёшь DESC, то наиболее раннюю)
и отсортирует всю выборку по 3 полю, т.е. по мин. вр. для каждого участнику, в порядке убывания.
Если добавишь в конец LIMIT 10, то выдаст тока 10 первых