Ще върне всички записи, които имат дубли:
SELECT theTable.*
FROM theTable
INNER JOIN (
SELECT link, size
FROM theTable
GROUP BY link, size
HAVING count(ID) > 1
) dups ON theTable.link = dups.link AND theTable.size = dups.size
Харесвам подзаявката b/c. Мога да правя неща като избиране на всички, освен първото или последното. (тогава е много лесно да се превърне в заявка за изтриване).
Пример:изберете всички дублиращи се записи ОСВЕН този с максимален идентификатор:
SELECT theTable.*
FROM theTable
INNER JOIN (
SELECT link, size, max(ID) as maxID
FROM theTable
GROUP BY link, size
HAVING count(ID) > 1
) dups ON theTable.link = dups.link
AND theTable.size = dups.size
AND theTable.ID <> dups.maxID