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

Sletning af duplikerede poster ved kun at bruge én forespørgsel

Brug af en ROW_NUMBER i en CTE giver dig mulighed for at slette duplikerede værdier og samtidig bevare unikke rækker.

WITH q AS (
  SELECT RN = ROW_NUMBER() OVER (PARTITION BY ID ORDER BY ID )
         , ID
         , Name
  FROM   ATable
)
DELETE FROM q WHERE RN > 1


  1. Udfyld manglende huller i datointervalforespørgsel ved hjælp af kalendertabel

  2. hvordan man indstiller variabel værdi i mysql CREATE TABLE forespørgsel? Java

  3. Race tilstand mellem valg og opdatering

  4. Implementering af MariaDB-replikering for høj tilgængelighed