В Афине / Престо вы можете использовать функцию max_by
, чтобы найти значение, связанное с максимальным значением столбца:
SELECT
user,
MAX(levelstarted) AS highestlevel,
MAX_BY(startedcount, levelstarted) AS startedcount
FROM (VALUES ('A', '0050', 2),
('A', '0051', 1),
('A', '0052', 3),
('B', '0030', 1),
('B', '0031', 2),
('B', '0032', 5),
('C', '0010', 6),
('C', '0011', 3),
('C', '0012', 3)
) AS v (user, levelstarted, startedcount)
GROUP BY user
ORDER BY user