Я думаю, что ваша структура таблицы не подходит для того, что вы пытаетесь сделать. Вы хотите, чтобы база данных знала, что есть некоторая связь между player1_name
и player1_score
, но она не закодирована в таблице. Изменение, которое сделало бы это намного проще, состояло бы в том, чтобы дать каждому игроку свою собственную запись и использовать то, что вы в настоящее время называете id
(который я предполагаю, является идентификатором для конкретной игры), чтобы указать, какие игроки идут вместе.
Это будет выглядеть так:
game_id | player_num | player_name | score
1 | 1 | Octern | 100
1 | 2 | Boris | 400
1 | 3 | Jarlsberg | 300
1 | 4 | Pete | 40000
...
Затем, чтобы найти рекордсмен для данной игры (в данном случае игра № 1), вы скажете:
select player_name from scores
WHERE game_id = 1
ORDER BY score desc
LIMIT 1