MYSQL批量更新

                                    MYSQL批量更新效率比较

 

批量更新比较常用的方法比较 

 

一 、 第一种方法,通过接收传进来的参数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里面是数据库字段。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值