Mysql中怎么实现Update批量更新
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,Mysql中怎么实现Update批量更新,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。通常情况下,我们会使用以下SQL语句来更新字段值:
千家信息网最后更新 2026年11月03日Mysql中怎么实现Update批量更新
Mysql中怎么实现Update批量更新,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
通常情况下,我们会使用以下SQL语句来更新字段值:
UPDATE mytable SET myfield='value' WHERE other_field='other_value';
但是,如果你想更新多行数据,并且每行记录的各字段值都是各不一样,你会怎么办呢?刚开始你可能会想到使用循环执行多条UPDATE语句的方式,就像以下的python程序示例:
for x in xrange(10): sql = ''' UPDATE mytable SET myfield='value' WHERE other_field='other_value'; '''
这种方法并没有什么任何错误,并且代码简单易懂,但是在循环语句中执行了不止一次SQL查询,在做系统优化的时候,我们总是想尽可能的减少数据库查询的次数,以减少资源占用,同时可以提高系统速度。幸运的是,还有更好的解决方案,只不过SQL语句稍微复杂点,但是只需执行一次查询即可,语法如下:
UPDATE mytable SET myfield = CASE other_field WHEN 1 THEN 'value' WHEN 2 THEN 'value' WHEN 3 THEN 'value' ENDWHERE id IN (1,2,3)
这样的SQL语句是很容易理解的,也就是用到了很多编程语言都有的关键字 CASE,根据id字段值来进行不同分支的当型判断,
如果你需要更新一行记录的多个字段,可以用以下SQL语句:
UPDATE categories SET display_order = CASE id WHEN 1 THEN 3 WHEN 2 THEN 4 WHEN 3 THEN 5 END, title = CASE id WHEN 1 THEN 'New Title 1' WHEN 2 THEN 'New Title 2' WHEN 3 THEN 'New Title 3' ENDWHERE id IN (1,2,3)
以上方案大大减少了数据库的查询操作次数,大大节约了系统资源
不过这个有个缺点 : 要注意的问题是SQL语句的长度,需要考虑程序运行环境所支持的字符串长度,当然这也可以更新mysql的设置来扩展。
当然python这么强大的语言还给我们提供了executemany 这么强大的方法 ,它不仅可以插入数据 当然也可以用于更新数据 作为一个经常搞事情的人 这些东西要经常相互用下 才可以对比出结果
update_sql = ''' UPDATE mayi_order_image set order_city = %swhere user_ip = %s and dt = %s and id = %s and user_ip is not null and (order_city is null or order_city = '' ) '''pp = []for x in xrange(len(result)): ip = result[x][0] id_ = result[x][1] add = dbip.lookup(str(ip)) adds = add.split('\t') address = str(adds[0]) + ','+str(adds[1] )+ ','+ str(adds[2]) pp.append((address,ip,end,id_)) if x%5000 == 0: saveLog_many(update_sql,pp) pp = []saveLog_many(update_sql,pp)看完上述内容,你们掌握Mysql中怎么实现Update批量更新的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
更新
语句
数据
字段
方法
查询
系统
问题
强大
内容
数据库
方案
更多
次数
程序
语言
资源
长度
循环
复杂
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技股
广州百单互联网科技有限公司
重生之互联网科技帝国
互联网科技开发公司
上海互联网科技有限公司
华宇互联网科技
互联网 卓越科技
互联网 科技创业
伴你行互联网科技有限公司
左右互联网络科技
无锡溥仪互联网科技有限公司
长沙茂晟互联网科技有限公司
互联网科技如何创业
每天都有哪些好的互联网科技
广州互联网高科技取餐柜
抖集互联网科技技术咨询
互联网高科技行业有哪些企业
艺电能源互联网科技有限公司招聘
长沙渺峰互联网科技有限公司
同城互联网络科技
互联网加科技
互联网科技深圳
科技互联网政务服务
北京互联网科技公司
奇酷互联网科技
广州互联网络科技有限公司
创业天下互联网科技有限公司
荆州市昕露互联网络科技有限公司
阿大互联网科技有限公司
上海旺乐尼互联网科技有限公司