在10列/ 50K行表中檢測重複項的最有效方法是什麼?我使用的是MSSQL 8.0如何檢測SQL Server表中的重複行?
30
A
回答
47
向人展示什麼樣的例子已經說明:
SELECT
Col1, -- All of the columns you want to dedupe on
Col2, -- which is not neccesarily all of the columns
Col3, -- in the table
Col4,
Col5,
Col6,
Col7,
Col8,
Col9,
Col10
FROM
MyTable
GROUP BY
Col1,
Col2,
Col3,
Col4,
Col5,
Col6,
Col7,
Col8,
Col9,
Col10
HAVING
COUNT(*) > 1
12
您可以對所有列使用「分組依據」,然後COUNT(*)> 1
+2
這個效果很好,只記得排除一個合成PK,如果你有一個 – 2008-11-20 20:37:19
2
要由作爲古格上述檢出,只是組。
select fieldA, fieldB, count(*) from table
group by fieldA, fieldB
having count(*) > 1
如果你想刪除愚弄......僞....
select distinct into a temp table
truncate original table
select temp table back into original table
隨着截斷,如果你有FK的約束,你可能會遇到問題,所以聰明地取消約束,並確保你不會孤兒記錄。
6
試試這個
Select * From Table
Group By [List all fields in the Table here]
Having Count(*) > 1
3
除了提供的建議,然後,我會去在防止重複的努力未來,而不是試圖在以後找到它們。
這是通過對列(或列組)應用唯一索引來完成的。請記住,數據庫中的數據可以從其他位置進行修改,而不是通過您正在使用的特定應用程序進行修改,因此最好在數據庫級別定義表中允許和不允許的內容。
相關問題
- 1. 如何檢測SQL Server數據庫已恢復
- 2. 我如何檢測SQL Server中的隱式轉換
- 3. 如何檢測SQL Server 2012數據庫
- 4. 如何檢測SQL Server 2008 R2中是否運行存儲過程
- 5. 如何檢測SQL Server數據庫中發生的任何修改?
- 6. 如何通過總和來限制SQL Server中的選擇?
- 7. Oracle重複行檢測
- 8. 如何從SQL Server中的表中刪除重複的行
- 9. 如何檢測SQLException的SQL錯誤狀態
- 10. 更好地執行SQL查詢的篩選器順序
- 11. CRM中的重複檢測
- 12. 如何檢測Azure機器學習中的重複行附近?
- 13. 如何檢測字符串列表中的重複?
- 14. 如何檢測重複記錄與子表中的記錄
- 15. SLComposeViewController Twitter的:如何檢測重複後
- 16. 使用Xcode UI測試檢測重複的錶行
- 17. 使多個連接更好地執行SQL查詢
- 18. 如何檢測一行是否被鎖定在sql server表中?
- 19. 如何檢查infopath中重複表中已存在的行嗎?
- 20. SQL檢測部分重複的行
- 21. 在SQL查詢中檢測XML無l
- 22. 如何檢測表中的冗餘行?
- 23. xml重複檢測
- 24. Java - 重複檢測
- 25. 檢測重複集
- 26. 我如何檢測重複PHP數組
- 27. 如何檢測重複數據?
- 28. 如何檢測重複小數
- 29. SQL Server:檢索列中的重複值
- 30. 如何複製/ SQL Server中的重複行2008
釘住它的傢伙..謝謝你.. – Bajji 2008-11-24 12:17:08