Slette Duplikater Fra en Tabell i SQL Server
Oppsummering: i denne opplæringen vil du lære hvordan å slette dupliserte rader fra en tabell i SQL Server.
for Å slette dupliserte rader fra en tabell i SQL Server, kan du følge disse trinnene:
- Finn dupliserte rader ved hjelp av
GROUP BY
klausulen ellerROW_NUMBER()
funksjon. - Bruk
DELETE
uttalelse for å fjerne dupliserte rader.
La oss sette opp en prøve tabell for demonstrasjon.,
Sette opp et eksempel tabell
Først må du opprette en ny tabell som heter sales.contacts
som følger:
Andre, sette inn noen rader i sales.contacts
tabell:
Tredje, spørring data fra sales.contacts
tabell:
Code language: SQL (Structured Query Language) (sql)
følgende bilde viser resultatet av spørringen:
Det er mange dupliserte rader (3,4,5), (6,7), og (8,9) for kontakter som har samme fornavn, etternavn og e-post.,
Slett dupliserte rader fra en tabell som eksempel på
følgende uttalelse bruker en vanlig tabell uttrykk (CTE) for å slette dupliserte rader:
I denne uttalelsen:
- Første, CTE bruker
ROW_NUMBER()
funksjonen til å finne dupliserte rader som er angitt av verdier ifirst_name
,last_name
, ogemail
kolonner. - Da
DELETE
uttalelse sletter alle dupliserte rader, men holder bare én forekomst av hver dupliserte gruppe.,
SQL Server gitt følgende melding som indikerer at den dupliserte rader har blitt fjernet.
Hvis du spørring data fra sales.contacts
bordet igjen, vil du finne at alle dupliserte rader er slettet.
I denne opplæringen, har du lært hvordan å slette dupliserte rader fra en tabell i SQL Server.