SSMS
 sql >> Database >  >> Database Tools >> SSMS

Come ottenere il codice T-SQL per trovare i duplicati?

Bene, se hai intere righe come duplicati nella tua tabella, almeno non hai una chiave primaria impostata per quella tabella, altrimenti almeno il valore della chiave primaria sarebbe diverso.

Tuttavia, ecco come creare un SQL per ottenere duplicati su un insieme di colonne:

SELECT col1, col2, col3, col4
FROM table
GROUP BY col1, col2, col3, col4
HAVING COUNT(*) > 1

Questo troverà le righe che, per le colonne col1-col4, hanno la stessa combinazione di valori, più di una volta.

Ad esempio, nella tabella seguente, le righe 2+3 sarebbero duplicate:

PK    col1    col2    col3    col4    col5
1       1       2       3       4      6
2       1       3       4       7      7
3       1       3       4       7      10
4       2       3       1       4      5

Le due righe condividono valori comuni nelle colonne col1-col4 e quindi, da quell'SQL, sono considerate duplicate. Espandi l'elenco di colonne per contenere tutte le colonne per le quali desideri analizzarlo.