Nỗ lực của bạn không phải là quá xa. Tuy nhiên, bạn đã thiếu một phần cần thiết của mệnh đề JOIN ... ON đầu tiên, và điều khoản JOIN thứ hai là không cần thiết.
SELECT tbl1.stage_level_id, tbl1.max_value, MIN(s.moves) AS moves
FROM
(
SELECT stage_level_id, MAX(value) AS max_value
FROM scores
GROUP BY stage_level_id
) tbl1
LEFT JOIN scores s ON tbl1.stage_level_id = s.stage_level_id AND tbl1.max_value = s.value
GROUP BY stage_level_id