Я должен получить player_id и game_code игры, в которую пользователь играл больше всего. Для каждого игрока список game_code он играл больше всего (не все игры он играл)
Правила: player_id уникален, и игрок мог сыграть в несколько игр (я хочу узнать, в какой игре он играл больше всего).
Я пробовал с max, но я просто заблудился.
Вот скрипка: http://sqlfiddle.com/#!9/0cf0f/2
Я считаю, вы хотите этого
SELECT t.player_id, t.game_code, t.minutes_played
FROM (
SELECT player_id, MAX(minutes_played) as maxi
FROM play_table
WHERE game_code in ('123','124','125','126','129')
GROUP BY player_id
) as m
INNER JOIN play_table as t
ON t.player_id = m.player_id and
t.minutes_played = m.maxi
Другой ответ на правильном пути, но вам нужно группировать player_id в подзапросе, предполагая, что вы хотите все:
SELECT m.player_id, pt.game_code, pt.minutes_played
FROM (
SELECT player_id, max(minutes_played) as maxi
FROM play_table
GROUP BY player_id
) as m
INNER JOIN play_table pt
ON m.player_id = pt.player_id
AND pt.minutes_played = m.maxi;