SQL Server 大數據量insert into xx select慢的解決方案


最近項目有個需求,把一張表中的數據根據一定條件增刪改到另外一張表。按理說這是個很簡單的SQL。可是在實際過程中卻出現了超級長時間的執行過程。

后來經過排查發現是大數據量insert into xx select造成。

原因在於當insert into xx select數據量達到10萬級別,同時又有Update和Delete操作表。容易造成鎖表。

經過研究重構了SQL語句問題解決。具體解決方案如下:

1.update 和Delete操作當成一個事務處理

2.Insert into前先刪除索引

3.將需要insert into的數據,拆分成不大於3000條/次去執行。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM