sql >> Databáze >  >> Database Tools >> SSMS

Jak získat kód T-SQL, aby našel duplikáty?

Pokud máte v tabulce celé řádky jako duplikáty, alespoň nemáte pro tuto tabulku nastaven primární klíč, jinak by alespoň hodnota primárního klíče byla jiná.

Zde je však návod, jak vytvořit SQL pro získání duplikátů přes sadu sloupců:

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

To najde řádky, které pro sloupce col1-col4 mají stejnou kombinaci hodnot více než jednou.

Například v následující tabulce by řádky 2+3 byly duplicitní:

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

Tyto dva řádky sdílejí společné hodnoty ve sloupcích col1-col4, a proto je tento SQL považován za duplikáty. Rozbalte seznam sloupců tak, aby obsahoval všechny sloupce, pro které to chcete analyzovat.



  1. Týden před 5.2

  2. Uplynul časový limit skriptu, pokud chcete dokončit import, odešlete znovu stejný soubor a import bude pokračovat

  3. Neplatný počet polí ve vstupu CSV na řádku 1 phpmyadmin

  4. SQL Server Management Studio:význam ikony