批量更新比較常用的方法比較
一 、 第一種方法,通過接收傳進來的引數list進行迴圈著組裝sql 注意mysql鏈結需要開啟加上 &allowmultiqueries=true
二、第二種方法、用on duplicate key update
更新資料 on duplicate key update耗時時間 for迴圈耗時時間
50000 8846ms 21828ms
100000 12689ms 38921ms
300000 75624ms 136254ms
sql語句for迴圈效率其實相當高的,只不過最後update語句比較多,量大了有可能造成sql阻塞
duplicate key update可以看出來比for更快,公司一般都禁止使用replace into和insert into … on duplicate key update,這種sql有可能會造成資料丟失和主從上表的自增id值不一致。注意 on duplicate key update 後面 必須跟上主鍵id,value裡面是資料庫字段。
mysql 批量更新 MySQL批量更新
我有2個表 mysql data details accounts invoices 理想情況下,每個data details都應具有accounts invoices id.data details有乙個帶有accounts invoices主鍵的外來鍵 由於某種原因,有data details記...
mysql有則更新 批量 mysql 批量更新
private function parseupdate data,field,table sql update set keys array keys current data print r keys die foreach keys as column 如何用一條sql語句實現批量更新?mys...
mysql 批量更新
最近有用到mysql批量更新,使用最原始的批量update發現效能很差,將網上看到的總結一下一共有以下三種辦法 1.批量update,一條記錄update一次,效能很差 update test tbl set dr 2 where id 1 2.replace into 或者insert into ...