ta bort dubbletter från en tabell i SQL Server

0 Comments

sammanfattning: i den här handledningen lär du dig att ta bort dubbla rader från en tabell i SQL Server.

om du vill ta bort dubblettraderna från tabellen i SQL Server följer du följande steg:

  • hitta dubblettrader medGROUP BY – klausulen ellerROW_NUMBER() – funktionen.
  • användDELETE – satsen för att ta bort dubblettraderna.

Låt oss ställa in en provtabell för demonstrationen.,

ställa in en provtabell

skapa först en ny tabell med namnetsales.contacts enligt följande:

För det andra, sätt in några rader i tabellensales.contacts:

För det tredje, frågedata från tabellensales.contacts:

Code language: SQL (Structured Query Language) (sql)

följande bild visar resultatet av frågan:

det finns många dubbla rader (3,4,5), (6,7) och (8,9) för kontakterna som har samma förnamn, efternamn och e-post.,

ta bort dubbla rader från ett tabellexempel

följande uttalande använder ett vanligt tabellexpression (CTE) för att ta bort dubbla rader:

i detta uttalande:

  • först använder CTE funktionenROW_NUMBER() för att hitta de dubbla rader som anges av värden ifirst_name,last_name ochemail kolumner.
  • då raderarDELETE alla dubblettrader men behåller bara en förekomst av varje dubblettgrupp.,

SQL Server utfärdade följande meddelande som indikerar att de dubbla raderna har tagits bort.

om du frågar data från tabellen sales.contacts igen kommer du att upptäcka att alla dubbla rader raderas.

i den här handledningen har du lärt dig hur du tar bort dubbla rader från en tabell i SQL Server.


Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *