Есть несколько способов справиться с этим. Я предполагаю, что могут быть другие столбцы, которые вы хотите из строки, в противном случае, как сказали другие, просто имя, MAX(my_index) ... GROUP BY name
будет работать. Вот пара примеров:
SELECT
MT.name,
MT.my_index
FROM
(
SELECT
name,
MAX(my_index) AS max_my_index
FROM
My_Table
GROUP BY
name
) SQ
INNER JOIN My_Table MT ON
MT.name = SQ.name AND
MT.my_index = SQ.max_my_index
Другое возможное решение:
SELECT
MT1.name,
MT1.my_index
FROM
My_Table MT1
WHERE
NOT EXISTS
(
SELECT *
FROM
My_Table MT2
WHERE
MT2.name = MT1.name AND
MT2.my_index > MT1.my_index
)