sql >> Databasteknik >  >> RDS >> Sqlserver

Hur man tar bort helt dubbletter av rader

Prova detta - det kommer att ta bort alla dubbletter från din tabell:

;WITH duplicates AS
(
    SELECT 
       ProductID, ProductName, Description, Category,
       ROW_NUMBER() OVER (PARTITION BY ProductID, ProductName
                          ORDER BY ProductID) 'RowNum'
    FROM dbo.tblProduct
)
DELETE FROM duplicates
WHERE RowNum > 1
GO

SELECT * FROM dbo.tblProduct
GO

Dina dubbletter borde vara borta nu:utdata är:

ProductID   ProductName   DESCRIPTION        Category
   1          Cinthol         cosmetic soap      soap
   1          Lux             cosmetic soap      soap
   1          Crowning Glory  cosmetic soap      soap
   2          Cinthol         nice soap          soap
   3          Lux             nice soap          soap


  1. Vad är det bästa sättet att lagra en historisk prislista i en MySQL-tabell?

  2. Instrumentering:Casting org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper till oracle.jdbc.OracleConnection

  3. Vad som orsakar skillnaden mellan CPU-tid och Förfluten tid i Oracle tkprof-filer

  4. MySQL hitta första lediga helgen