Para eliminar registros duplicados según varios campos:
use BaseDatos
Go
WITH CTE (Col1,Col2,Col3,Col4, DuplicateCount)
AS
(
SELECT codprenda,day(ENTRADA), month(entrada),year(entrada),
ROW_NUMBER() OVER(PARTITION BY codprenda,day(ENTRADA), month(entrada),year(entrada) orDER BY Codprenda) AS DuplicateCount
FROM ALBAH
)
DELETE
FROM CTE
WHERE DuplicateCount > 1
GO
Otro ejemplo: