SQL Server での重複行と関連 ID の取得
データベースから重複行を削除することは、データの整合性と効率性にとって重要です。このシナリオでは、組織テーブルからすべての重複行を識別し、対応する ID と重複行数とともに取得することを目的としています。
これを実現するには、SQL Server の強力な機能を活用できます。指定されたステートメントは、重複行を効果的に識別し、重複数を提供します:
SELECT orgName, COUNT(*) AS dupes FROM organizations GROUP BY orgName HAVING COUNT(*) > 1
このクエリを強化するために、個別の組織名と対応する重複数のテーブルを生成するサブクエリを導入できます:
SELECT orgName, COUNT(*) AS dupeCount FROM organizations GROUP BY orgName HAVING COUNT(*) > 1
このサブクエリは、orgName 列を使用してメインの組織テーブルと結合され、各重複に関連付けられた ID を取得できるようになります。 row:
select o.orgName, oc.dupeCount, o.id from organizations o inner join ( SELECT orgName, COUNT(*) AS dupeCount FROM organizations GROUP BY orgName HAVING COUNT(*) > 1 ) oc on o.orgName = oc.orgName
この洗練されたクエリにより、重複する組織行、それらに関連付けられた ID、および重複数の包括的なリストが提供されるようになりました。この情報により、重複行を手動で安全にマージし、データベース内の他のテーブルとの関係を維持しながらデータの整合性を確保できるようになります。
以上がSQL Server で重複する行とその ID を検索して取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。