Eliminare i duplicati da una tabella in SQL Server
Sommario: in questo tutorial, imparerete come eliminare le righe duplicate da una tabella in SQL Server.
Per eliminare le righe duplicate dalla tabella in SQL Server, attenersi alla seguente procedura:
- Trova le righe duplicate utilizzando la clausola
GROUP BY
o la funzioneROW_NUMBER()
. - Utilizzare
DELETE
istruzione per rimuovere le righe duplicate.
Impostiamo una tabella di esempio per la dimostrazione.,
Impostazione di un esempio di tabella
in Primo luogo, creare una nuova tabella denominata sales.contacts
come segue:
Secondo, inserire alcune righe in un sales.contacts
tabella:
Terzo, query di dati sales.contacts
tabella:
Code language: SQL (Structured Query Language) (sql)
l’immagine seguente mostra L’output della query:
Ci sono molte righe duplicate (3,4,5), (6,7), e (8,9) per i contatti che hanno lo stesso nome, cognome e e-mail.,
Eliminare le righe duplicate da una tabella di esempio
La seguente dichiarazione utilizza un’espressione di tabella comune (CTE) per eliminare le righe duplicate:
In questa affermazione:
- in Primo luogo, il CTE utilizza il
ROW_NUMBER()
funzione per trovare le righe duplicate specificato da valori nelfirst_name
last_name
eemail
colonne. - Quindi, l’istruzione
DELETE
elimina tutte le righe duplicate ma mantiene solo un’occorrenza di ciascun gruppo duplicato.,
SQL Server ha emesso il seguente messaggio che indica che le righe duplicate sono state rimosse.
Se si interrogano nuovamente i dati dalla tabellasales.contacts
, tutte le righe duplicate vengono eliminate.
In questo tutorial, hai imparato come eliminare le righe duplicate da una tabella in SQL Server.