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 BYklausulen ellerROW_NUMBER()funksjon. - Bruk
DELETEuttalelse 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, ogemailkolonner. - Da
DELETEuttalelse 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.