これまでに発生したすべての行変更を保存するテーブルがあります。問題は、アプリケーションの最初に、すべての行のコピーを大量に作成するバグがあったことです。
テーブルは次のようになります。
copies
|ID |CID |DATA
| 1 | 1 | DA
| 2 | 2 | DO
| 2 | 3 | DO (copy of CID 2)
| 1 | 4 | DA (copy of CID 1)
| 2 | 5 | DA
| 1 | 6 | DA (copy of CID 1)
| 2 | 7 | DO
CIDは、テーブルコピーではUNIQUEです。
私が欲しいのは、CIDでソートされたDATA GROUPBYIDの重複をすべて削除することです。
表からわかるように、CID 2と3は同じであり、次々に配置されています。CID3を削除したいと思います。CID4とCID6でも同じです。それらの間にID1はなく、CID1のコピーです。
重複を削除した後、テーブルを次のようにします。
copies
|ID |CID |DATA
| 1 | 1 | DA
| 2 | 2 | DO
| 2 | 5 | DA
| 2 | 7 | DO
助言がありますか?:)
誰もが最善だと思う答えがこの結果をもたらすので、私の質問はひどく尋ねられたと思います:
ID | DATA | DATA | DATA | DATA | DATA | DATA | CID |
|Expected | Quassnoi |
1809 | 1 | 0 | 1 | 0 | 0 | NULL | 252227 | 252227 |
1809 | 1 | 0 | 1 | 1 | 0 | NULL | 381530 | 381530 |
1809 | 1 | 0 | 1 | 0 | 0 | NULL | 438158 | (missing) |
1809 | 1 | 0 | 1 | 0 | 1535 | 20090113 | 581418 | 581418 |
1809 | 1 | 1 | 1 | 0 | 1535 | 20090113 | 581421 | 581421 |
CID252227とCID438158は重複していますが、CID381530がそれらの間にあるためです。これは残しておきたいです。CIDとIDで注文するときに、次々に続くのは重複だけです。