ホームページ >データベース >mysql チュートリアル >MySQL で詳細情報を含む重複レコードを検索して取得するにはどうすればよいですか?
詳細情報を含む MySQL の重複レコードの検索
データの整合性を確保するために、MySQL データベースから重複レコードを特定して削除することが必要になることがよくあります。効率化の目的。 HAVING 句を指定した GROUP BY クエリを使用する一般的な方法では、重複レコードをカウントできますが、提供されるのは要約ビューのみです。
実際の重複行を取得するには、より包括的なアプローチが必要です。重複を検索するために別のクエリに依存する代わりに、元のステートメント内でサブクエリを利用できます。
次のクエリは、最初のクエリをサブクエリとして再構築し、それをメイン テーブルと結合して、特定のクエリを抽出します。重複行:
SELECT firstname, lastname, list.address FROM list INNER JOIN (SELECT address FROM list GROUP BY address HAVING COUNT(id) > 1) dup ON list.address = dup.address;
このクエリは目的の出力を生成します:
JIM JONES 100 MAIN ST JOHN SMITH 100 MAIN ST
このメソッドは、個々の重複行を取得する集計操作により、追加のクエリを必要とせずに詳細な情報が得られます。
以上がMySQL で詳細情報を含む重複レコードを検索して取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。