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

Hvordan får T-SQL-koden til at finde dubletter?

Nå, hvis du har hele rækker som dubletter i din tabel, har du i det mindste ikke en primærnøgle sat op til den tabel, ellers ville i det mindste den primære nøgleværdi være anderledes.

Men her er hvordan man bygger en SQL for at få dubletter over et sæt kolonner:

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

Dette vil finde rækker, som for kolonner col1-col4 har den samme kombination af værdier, mere end én gang.

For eksempel, i følgende tabel, ville række 2+3 være dubletter:

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

De to rækker deler fælles værdier i kolonnerne col1-col4, og derfor betragtes SQL som dubletter. Udvid listen over kolonner til at indeholde alle de kolonner, du ønsker at analysere dette for.



  1. oprette triggere - fejl ved DECLARE

  2. SSMS - SQL Azure v12 preview - ukendt egenskab IsNativelyCompiled

  3. Visning af Blob-indhold i phpMyAdmin

  4. Spor ændringer i Microsoft SQL Server-database