Из ваших сообщений и комментариев видно, что вы пытаетесь создать систему ранжирования на основе результатов индивидуального соревнования. Для простых сценариев, таких как описанный вами, может быть возможно создать запрос, который будет возвращать ожидаемые результаты. Однако по мере того, как вы получаете больше результатов с большим количеством пользователей, количество различных сценариев и требуемых расчетов может стать более сложным.
Возможно, было бы полезно взглянуть на систему ранжирования Эло , используемую шахматами для создания рейтинга между людьми в соревнованиях один на один. Вот сайт, который дает довольно хороший пример того, как работают расчеты: Elo Введение (объяснено как используется для турниров по Го).
Чтобы создать систему ранжирования любого типа, вам необходимо четко перечислить все правила / логику, которые будут влиять на общее ранжирование. Без полного списка полный алгоритм не может быть полностью очищен.