私は48レコードを持つTable1というテーブルを持っています。そのうちの24個だけがそのテーブルになければなりません。何らかの理由で重複レコードが挿入されました。そのテーブルから重複したレコードを削除するにはどうすればいいですか?テーブルから重複レコードを削除する
5
A
答えて
5
です。
WITH cte AS
(
SELECT {list-of-columns-in-table},
row_number() over (PARTITION BY {list-of-key-columns} ORDER BY {rule-to-determine-row-to-keep}) as sequence
FROM myTable
)
DELETE FROM cte
WHERE sequence > 1
これは共通テーブル式(CTE)を使用してシーケンス列を追加します。 {表内の列のリスト}は、その状態と同じです。すべての列が必要なわけではありませんが、ここでは説明しません。
{キーのリスト - リスト}は、重複するものを定義するために使用する列です。
{ルールを決定する行を保持する}は、最初の行が保持する行になるような順序です。たとえば、最も古い行を保持する場合は、シーケンスに日付列を使用します。
次に、実際の列を含むクエリの例を示します。
WITH cte AS
(
SELECT ID, CourseName, DateAdded,
row_number() over (PARTITION BY CourseName ORDER BY DateAdded) as sequence
FROM Courses
)
DELETE FROM cte
WHERE sequence > 1
この例ではCoursName値に基づいて重複行を削除し、DateAdded値最古basesdを保持します。
0
http://support.microsoft.com/kb/139444
このセクションでは、キーです。 ポイントを削除してください。 ;)
この記事は を見つけ、 テーブルから重複した主キーを削除する方法について説明します。しかし、 は、 の重複が起こって再発を防ぐためのプロセスを調べる必要があります。
明らかにデータキーを定義していないため、論理キーでデータをグループ化し、最後にHAVING COUNT(*)> 1ステートメントを適用してレコードを識別します。記事はこれに深く入ります。
0
これは、ここでSQL Serverのバージョンが2005以降である場合は、試してみてください何か簡単な方法
Select * Into #TempTable FROM YourTable
Truncate Table YourTable
Insert into YourTable Select Distinct * from #TempTable
Drop Table #TempTable
関連する問題
- 1. 削除する方法重複レコードから1つを除いてSQLテーブルから重複レコードを削除しますか?
- 2. MYSQLテーブルからの重複を削除
- 3. ActiveRecord:重複レコードを削除する
- 4. BigQueryテーブルの重複レコードを削除する
- 5. テーブルから重複する行を削除する
- 6. ビューから重複レコードを削除します
- 7. ステージングファイルから重複を削除する
- 8. TStringListから重複を削除する
- 9. Google App Engineテーブルからレコードを削除
- 10. Access 2007の複数のテーブルからレコードを削除
- 11. SQL:重複レコードを削除する - 別の種類にもかかわらず
- 12. C#を使用してExcelシートから重複レコードを削除する方法
- 13. SQL:SQL Serverで重複するレコードを削除する
- 14. 古い重複レコードを選択して削除しますか?
- 15. 結果から重複を削除
- 16. MySQLで「重複」レコードを削除するには?
- 17. MongoDBの重複レコードをMapReduceで削除するには?
- 18. SQLテーブルから重複レコードを選択する方法は?
- 19. 複数のテーブルから1つのレコードを削除するSQL Serverのトリガー
- 20. 重複の削除方法重複を削除しない
- 21. 2つのテーブル間でJOINから重複を削除する(Oracle)
- 22. 部分的な重複をmysqlテーブルから削除するには?
- 23. 複数のテーブルから同時にレコードを削除しますか?
- 24. テーブルからすべてのレコードを削除する
- 25. テーブルからすべてのレコードを削除する
- 26. SQLサブクエリを削除し、重複したレコードを削除しました
- 27. mysqlテーブルの重複するペアを削除する
- 28. 一時テーブルを持たないMySQLテーブルの重複レコードをすべて削除するには
- 29. スライドをテーブルからレコードを削除するには
- 30. 他のテーブルとの関連がない重複レコードの検索/削除
48個しかない場合は、SSMSをロードして手動で削除してください。 –