insert語句執行速度慢應該怎麼解決

2022-10-10 09:46:30 字數 2631 閱讀 5657

1樓:個他如果

通常大資料插入的話都不會一條一條插入,使用bulk insert等方法。 如果是程式限制的話,一批一批的提交 begin transaction insert … insert … insert … commit transaction 另外去掉索引,把日誌設為簡單都能提高一點效率

sql語句執行起來真的很慢,請大家幫忙優化一下 10

2樓:

先建立索引,索引名隨便起:

create index index_name on coptd(td004);

create index index_name on moctb(td004);

create index index_name on mocta(td004);

insert into zdidan(dd01,dd02,dd03) select distinct td004,sum(td08),'o' from coptd,mocta,moctb where coptd.td004=mocta.td004 and moctb.

td004=mocta.td004 and coptd.td021 = 'y' and coptd.

td016 = 'n' and coptd.td008+coptd.td024-coptd.

td009-coptd.td025 > 0 and tb001+tb002=ta001+ta002 and ta013='y' and ta011 < 'y' and tb004>tb005 group by coptd.td004;

sql insert 執行慢的問題

3樓:匿名使用者

通常大資料插入的話都不會一條一條插入,使用bulk insert等方法。

如果是程式限制的話,一批一批的提交

begin transaction

insert …

insert …

insert …

commit transaction

另外去掉索引,把日誌設為簡單都能提高一點效率

4樓:匿名使用者

完全不是因為資料量大的原因。你可以建一個表測試下。

關於mysql大量資料insert into 的時候問什麼執行起來慢

5樓:匿名使用者

使用etl工具,平時我一般處理的記錄不多百萬沒試過,10w條記錄大概不到2分鐘,有人用百萬的測試記錄。 etl廠商reikingibm information server(datastage)informatic基本架構支援執行平臺windows/unix/linuxwindows/unix/linuxwindows/unix/linux資料訪問模式支援絕大部分支援絕大部分支援絕大部分支援資料抽取方式支援生成檔案(落地)再匯入;直接匯入;訊息協議直接匯入;匯入方式,資料匯入支援批量載入(sql loader方式)、insert模式、行刪除模式

其中insert模式是插入到臨時表,然後更新,需要手工寫update語句,配置比較複雜,

行刪除模式這種方式不考慮,效能肯定會非常差。

批量載入模式,是對方工程師推薦的測試方案,其效能應該是最快的.以下測試是基於批量載入模式直接匯入;資料匯入目的庫有兩種載入方式

normal和bulk,即普通插入和批量載入。

批量載入需要先將索引drop掉,在載入完成後重新建立,但是這種方式在對付

大資料量時很慢,例如下文測試hisdeliver 1個月的資料抽取,286萬記錄,需要4分47秒,比普通插入

要慢很多。下面的測試結果由informatic的工程師,其基於normal模式實時增量etl支援遞增欄位實現,觸發器模式,支援oracle cdccdc,實現秒級別的增量cdc,實現秒級別的增量,另外付費購買效能單表hisdeliver抽取,記錄數124810,耗時比較1分16秒17秒15秒單表hisdeliver抽取,記錄數2859999,耗時比較22分12秒6分12秒2分58秒採集sqlserver資料;採集表zygd(記錄數:597872)測試報錯41秒16秒流程中是否支援並行載入支援支援支援並行載入效能client 730279行5分鐘1分14秒2分02秒clientinfo 739278行7分鐘2分18秒1分50秒stockholder 108378911分鐘2分59秒3分01秒hisdeliver 124810行未載入48秒20秒

6樓:匿名使用者

插入上百萬條資料?那你乾脆直接用匯入工具進行匯入得了。

怎麼樣寫sql語句可以提高資料庫的執行速度?應該注意那些?

7樓:匿名使用者

這個範圍太大了,一下子是很難說清楚的,如果用sql server 的話,可以使用它自帶的優化器來優化,然後看看它給你的建議去優化。要注意規範化程式設計。而且要抓住一個原則來寫,就是進可能縮小查詢出來的結果集,哪怕多次查詢都沒所謂,要一步一步把大資料量縮小。

很多隻是還是得在時間中優化。set statistics time on;sql 語句set statistics time off;這個是sqlserver ,可以測出執行時間。編寫的時候要時刻想著:

縮小結果集、減少連線次數和表數。大資料量不要用update,可以用臨時表作為過度來實現update操作。

電腦執行速度慢,怎麼辦啊,電腦執行速度慢怎麼辦?

用360 清理一下系統垃圾 打上補丁 減少開啟服務 啟動項 否用mhdd檢測硬碟是否有壞道 將壞道修復 或者遮蔽再換個系統版本重灌 出現這樣的問題 可以考慮硬體問題 很大可能是你的防毒軟體佔太多cpu,導致系統執行慢,特別是卡巴斯基,當執行多一點網業之類的就特別卡,這與顯示卡沒什麼多大關係。建意你沒...

電腦速度慢,怎麼解決?謝謝,電腦執行速度慢怎麼辦?

不用擔心 電腦卡 檢查下網路 在就是防毒軟體 有的防毒軟體忒別佔cpu 看看本地c盤還省多少空間,把沒用的軟體 都解除安裝了 在不行 就做個好點的系統 全解決 電腦執行速度慢怎麼辦?重新做一下系統bai。清理磁du 盤和整理磁碟碎片。zhi 1 在我的電腦視窗,右擊要dao清理的盤專符 屬性 屬 清...

關於電腦執行速度的問題難,電腦執行速度慢的問題

用360軟體加速吧。電腦執行速度慢的問題 電腦執行速度慢的解決辦法,讓你三分趾搞定!cpu調頻 但是這樣對硬體不大好 還有就是用安裝盤裝 或者把c盤分割槽的時候空間少大一點 還有就是你點開始 然後執行 然後輸入msconfig 然後開啟 開啟以後把啟動專案裡面的東西全部禁用就丟下一個ctfmon 這...