Я пытаюсь написать sql, который дает желаемый результат из данных ниже.
данные:
IDNum Opt1 Opt2 Opt3 Count
1 A A E 1
1 A B J 4
2 A A E 9
3 B A F 1
3 B C K 14
4 A A M 3
5 B D G 5
6 C C E 13
6 C C M 1
желаемый результат:
IDNum Opt1 Opt2 Opt3 Count
1 A B J 4
2 A A E 9
3 B C K 14
4 A A M 3
5 B D G 5
6 C C E 13
По сути, я хочу, чтобы для каждого ID Num была полная запись с наибольшим количеством. Я попытался сделать группировку по, но если я группирую по Opt1, Opt2, Opt3, это не сработает, потому что возвращает наибольшее количество для каждой комбинации (ID Num, Opt2, Opt3, Opt4), что не то, что я хочу. Если я группирую только по ID Num, я могу получить максимум для каждого ID Num, но я теряю информацию о том, какая комбинация (Opt1, Opt2, Opt3) дает этот счет.
Мне кажется, что я делал это раньше, но я не часто работаю с SQL и не могу вспомнить как. Есть ли простой способ сделать это?