重複した行を実際に削除せずに、データベース内の重複を処理する通常の方法があるかどうかを知りたいです。または、私が達成しようとしていることの特定の名前なので、チェックアウトできます。
なぜ重複を保持する必要があるのですか? 私は彼らを監視しなければならないからです。それらは重複しており、たとえば検索できないことを知っておく必要がありますが、同時に、外部ソースから行を更新し、それらを削除すると元に戻るため、それらを保持する必要があります外部ソースから更新するとすぐにデータベース。
私には2つのアイデアがあります:
「検索可能な」ブール列を追加しますが、それは部分的な解決策だと思います。将来的には不十分になる可能性があります
追加の列「duplicate_of」があります。行が重複している列のIDを保持します。同じテーブルの外部キーになるのはちょっと変ですね。
特定のプログラミングの質問ではないことは知っていますが、誰かが同様の状況 (Facebook - 他の人の複製であるページを追跡するページ) を処理したに違いないと思います。
EDIT:これらは、主にその場所(lat、lng)によって特定されていない、密接な重複であるため、DISTINCTはおそらくここでは解決策ではありません