SQL 2008 R2 を使用しています。5 つの複合主キーがあります
(NOID ,CODE_CLIENT,CODE_DEST,DATE_CLOTURE,DATE_CLOTUR_REEL)
私のテーブルの上。
次の構文で double を削除しようとします。
DELETE
FROM [LETTRE_VOIT_FINAL]
WHERE EXISTS
(SELECT NOID ,
CODE_CLIENT,
CODE_DEST,
DATE_CLOTURE,
DATE_CLOTUR_REEL
FROM LETTRE_VOIT_FINAL
GROUP BY NOID ,
CODE_CLIENT,
CODE_DEST,
DATE_CLOTURE,
DATE_CLOTUR_REEL HAVING count(*) > 1)
すべてのエントリが削除されます。幸いなことに、バックアップを作成しました。
以前は 4 つの複合主キーがあり、最後の DATE_CLOTUR_REEL を追加しました。主キーの値を null にすることはできないため、値getdate()
をこのキーに入れます。そのため、二重であるため、5つすべてを複合主キーとして設定することはできません。だから今、私のテーブルには主キーがありません。