sql >> Database teknologi >  >> RDS >> Sqlserver

Sådan sletter du fuldstændigt duplikerede rækker

Prøv dette - det vil slette alle dubletter fra din tabel:

;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

Dine dubletter burde være væk nu:output er:

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. Postgresql - Forespørgsel kører meget hurtigere med enable_nestloop=false. Hvorfor gør planlæggeren ikke det rigtige?

  2. Hvordan fjerner man vognretur og nye linjer i Postgresql?

  3. Database indsæt ydeevne

  4. Gentildel værtsadgangstilladelse til MySQL-bruger