Набор результатов SQL с функцией Max и результатами соседней строки
У меня есть четыре столбца вывода в моем наборе результатов:
Имя, Предмет, Оценка, Значение
Можно ли заполнить результирующий набор с помощью Max(Value), но также провести через смежный предмет и оценку, и как мне этого добиться? например:
Name Subject Grade Value
Helen Chemistry C 7
Helen Physics B 8
Helen Biology A 9
Brad Chemistry C 7
Brad Biology D 6
Brad Physics F 4
становится
Name Subject Grade Value
Helen Biology A 9
Brad Chemistry C 7
1 ответ
SELECT *
FROM (
SELECT *,
ROW_NUMBER() OVER (PARTITION BY name ORDER BY value DESC) rn
FROM mytable
) q
WHERE rn = 1