Buscar registros duplicados en una tabla usando SQL Server

Estoy validando una tabla que tiene datos de nivel de transacción de un sitio de comercio electrónico y encuentro los errores exactos.

Quiero su ayuda para encontrar registros duplicados en una tabla de 50 columnas en SQL Server.

Supongamos que mis datos son:

OrderNo shoppername amountpayed city Item       
1       Sam         10          A    Iphone
1       Sam         10          A    Iphone--->>Duplication to be detected
1       Sam         5           A    Ipod
2       John        20          B    Macbook
3       John        25          B    Macbookair
4       Jack        5           A    Ipod

Supongo que uso la consulta a continuación:

Select shoppername,count(*) as cnt
from dbo.sales
having count(*) > 1
group by shoppername

me devolverá

Sam  2
John 2

Pero no quiero encontrar duplicados de poco más de 1 o 2 columnas. Quiero encontrar el duplicado en todas las columnas juntas en mis datos. Quiero el resultado como:

1       Sam         10          A    Iphone

Respuestas a la pregunta(26)

Su respuesta a la pregunta