Sim, supondo que você tenha um campo de ID exclusivo, você pode excluir todos os registros iguais, exceto o ID, mas que não tenham "o ID mínimo" para o grupo de valores.
Exemplo de consulta:
DELETE FROM Table
WHERE ID NOT IN
(
SELECT MIN(ID)
FROM Table
GROUP BY Field1, Field2, Field3, ...
)
Notas:
- Escolhi livremente "Tabela" e "ID" como nomes representativos
- A lista de campos ("Field1, Field2, ...") deve incluir todos os campos, exceto o ID
- Esta pode ser uma consulta lenta dependendo do número de campos e linhas, mas espero que seja boa em comparação com as alternativas
EDIT:Caso você não tenha um índice exclusivo, minha recomendação é simplesmente adicionar um índice exclusivo auto-incremental. Principalmente porque é um bom design, mas também porque permitirá que você execute a consulta acima.