Один из вариантов использует ROW_NUMBER
:
SELECT Name, Value, AnotherColumn
FROM
(
SELECT *, ROW_NUMBER() OVER (PARTITION BY Name ORDER BY Value DESC) rn
FROM yourTable
) t
WHERE rn = 1
Обратите внимание, что если вы хотите, чтобы все связи на имя относились к наибольшему значению, вы можете заменить ROW_NUMBER
на RANK
(или, возможно, DENSE_RANK
), чтобы получить все связи.