sql >> データベース >  >> Database Tools >> SSMS

T-SQLコードで重複を見つけるにはどうすればよいですか?

    テーブルに行全体が重複している場合は、少なくともそのテーブルに主キーが設定されていません。そうでない場合、少なくとも主キーの値は異なります。

    ただし、SQLを作成して、一連の列で重複を取得する方法は次のとおりです。

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

    これにより、列col1〜col4について、同じ値の組み合わせを持つ行が複数回検出されます。

    たとえば、次の表では、行2+3が重複しています。

    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
    

    2つの行は列col1〜col4で共通の値を共有しているため、そのSQLでは重複していると見なされます。列のリストを展開して、これを分析するすべての列を含めます。



    1. phpmyadminへのリモートログインを無効にする方法

    2. SQL Server Management Studioでローカルデータベースに接続するにはどうすればよいですか?

    3. phpmyadminからデータをエクスポートしている間、SQLクエリページに戻ります

    4. 外部キーとしての複合キー(sql)