使用merge into總結

2021-08-28 14:37:55 字數 394 閱讀 5733

第二次使用merge into時依舊出現了問題,覺得這個語句即是常用語句並且效率也高,所以總結下

1.用於對比的字段不能放在update下面,比如id之類的

2.string truncted。報出這個異常是由於某些欄位在做更新的過程中,目標表的字段長度小於匯入值,需要修改目標表字段的長度。

3.由於merge into語法較為複雜,所以有時候報錯,不會準確報出是哪個位置出了問題,查詢錯誤可將語句分段執行,即先執行更新部分,或者注釋掉部分欄位後進行。一般為字段之間資料型別不匹配的問題。

4.merge into 對千萬級以上的資料更新,速度就比較慢了,由於之前沒有做過千萬級別以上的update,或者insert,所以還不好判斷它的效率問題,目前這個問題還沒有解決,節後應該會嘗試並行等方法,看是否能夠提高速度。

merge into的模板使用

1,建立兩測試表 create table merge test1 test1 id number,test1 name varchar2 100 create table merge test2 test2 id number,test2 name varchar2 100 2,測試表插入資料 i...

Oracle中Merge into用法總結

起因 前段時間,因為涉及到一張表的大資料操作,要同時進行增刪改,我跟師傅想了很多優化辦法,結果都不盡人意。剛開始用的就是原始演算法,先更新現有記錄,再插入滿足要求的其他記錄,最後再刪除多餘記錄,但是少量資料還可以,10w條資料就不行了,前台的超時時間是60s,遠遠無法滿足要求。之後又想辦法將任務進行...

Oracle中Merge into用法總結

起因 前段時間,因為涉及到一張表的大資料操作,要同時進行增刪改,我跟師傅想了很多優化辦法,結果都不盡人意。剛開始用的就是原始演算法,先更新現有記錄,再插入滿足要求的其他記錄,最後再刪除多餘記錄,但是少量資料還可以,10w條資料就不行了,前台的超時時間是60s,遠遠無法滿足要求。之後又想辦法將任務進行...