il principio è quello di:
- fare una prima vista che contiene solamente i massimi ID per ogni gruppo (maxid)
- poi metti in JOIN la vista con la tabella estraendo tutti i valori dalla tabella
che nidificato in una unica vista viene più o meno cosi
SELECT
T2.id,
T2.filename,
T2.link
FROM
tabella AS T2
INNER JOIN
(
SELECT
Max(T1.id) AS maxid
FROM
tabella AS T1
GROUP BY
T1.filename
) AS Q1
ON
T2.id = Q1.maxid
;
Ci sarebbe anche il sistema alternativo della sottoquery ma facciamo un passo per volta :)
.