У меня есть следующая таблица:
id year month
1 2019 9
2 2019 10
3 2019 11
4 2019 12
5 2020 1
6 2020 2
7 2020 3
8 2020 4
Мне нужно выбрать максимальное значение месяца столбца, но только там, где год получил максимальное значение. В этом случае мне нужно выбрать строку
id max_year max_month
8 2020 4
Я пытался сделать это с этим
SELECT m.id, m.max_year, MAX(m.month) AS max_month FROM (SELECT id, month, MAX(year) AS max_year FROM tbl_months GROUP BY id) AS m GROUP BY m.id
К сожалению, я получаю
id max_year max_month
5 2020 1
6 2020 2
7 2020 3
8 2020 4
Любые подсказки, почему? Есть ли другой способ сделать его проще и чище?
Спасибо.