ホームページ >データベース >mysql チュートリアル >TSQL を使用して SQL Server の重複レコードを削除する方法

TSQL を使用して SQL Server の重複レコードを削除する方法

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-12 11:47:42154ブラウズ

How to Delete Duplicate Records in SQL Server Using TSQL?

SQL Server テーブルの重複エントリの削除

問題:

重複エントリを含む Employee というフィールドを持つ EmployeeName テーブルがあるとします。 T-SQL を使用して、SQL Server の EmployeeName 列に基づいてこれらの重複行を削除するにはどうすればよいですか?

解決策:

T-SQL とウィンドウ関数を使用して、SQL Server の重複行を効率的に削除します。 従業員 ID を使用して重複を順序付けることにより、各名前の最初の出現のみを保持できます。

<code class="language-sql">DELETE x
FROM (
  SELECT *, rn = ROW_NUMBER() OVER (PARTITION BY EmployeeName ORDER BY empId)
  FROM Employee
) x
WHERE rn > 1;</code>

DELETE ステートメントを実行する前に削除予定の行を確認するには、次のクエリを実行します。

<code class="language-sql">SELECT *
FROM (
  SELECT *, rn = ROW_NUMBER() OVER (PARTITION BY EmployeeName ORDER BY empId)
  FROM Employee
) x
WHERE rn > 1;</code>

以上がTSQL を使用して SQL Server の重複レコードを削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。