So etwas sollte funktionieren:
DELETE FROM `table`
WHERE `id` NOT IN (
SELECT MIN(`id`)
FROM `table`
GROUP BY `download_link`)
Um auf der sicheren Seite zu sein, sollten Sie vor dem Ausführen der eigentlichen Löschabfrage möglicherweise eine entsprechende Auswahl durchführen, um zu sehen, was gelöscht wird:
SELECT * FROM `table`
WHERE `id` NOT IN (
SELECT MIN(`id`)
FROM `table`
GROUP BY `download_link`)