簡體   English   中英

在SQL Server 2012中刪除十億條記錄的最佳方法是什么?

[英]What is the best way to delete billion of records in SQL Server 2012?

我的表中有10億條記錄。 我正在嘗試刪除具有兩個字段值的這些記錄。 但這需要太多時間。 所以你能告訴我任何解決方案嗎?

如果要刪除所有十億條記錄,則將其截斷。 如果您希望某些記錄存在,可以使用查詢DELETE FROM ...

如果可以的話,可以使用TRUNCATE否則將要保留的內容復制到臨時表中,然后從臨時表中截斷並重新插入

SET ROWCOUNT 500

一次刪除500

select 1    -- Just to force @@rowcount > 0
while @@ROWCOUNT > 0
delete from [table]
[where ...]

鏈接到同一問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM