delete from TableName where id in
(
SELECT ID FROM
(
SELECT *
FROM
TableName t0
WHERE
(t0.Field1,t0.Field2)
IN (
SELECT
t1.Field1,
t1.Field2
FROM
TableName AS t1
GROUP BY
t1.Field1,
t1.Field2
HAVING
count(*) > 1
)
AND t0.ID NOT IN (
SELECT
min(t2.ID)
FROM
TableName as t2
GROUP BY
t2.Field1,
t2.Field2
HAVING
count(*) > 1
)
) AS tt1
);