是否有批量更新MySQL数据的方法
初学编程,遇到需要批量更新的数据时,我的做法是用循环语句写入每一条数据,也就是每条更新要写一次数据库。自己也发现这样做效率很低,想是如果请求一次就能更新所有数据该有多好,特来寻找答案。
比如现在有下列数据:
Name id ScoreA ScoreB Jim 1 90 91 Ken 2 92 93 Kate 3 97 95 Lily 4 95 98
当我要更新这些人的分数时,用下列语句:
UPDATE table SET ScoreA = 99 WHERE id = 1; UPDATE table SET ScoreA = 96 WHERE id = 2; UPDATE table SET ScoreB = 93 WHERE id = 2; UPDATE table SET ScoreB = 94 WHERE id = 3; UPDATE table SET ScoreA = 95 WHERE id = 4;
不知道有没有更高效的方法?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
有一种方法是这样的,不过只能更新一个字段
具体请看http://www.ghugo.com/update-multiple-...,前几天我也遇到同样的问题,于是google了一番。
因为你的set的值不一样 不能用批量更新!
把数据保存到一个文本文件中,字段间用TAB分隔,然后在mysql中执行
LOAD DATA INFILE "/PATH/oo.txt" REPLACE INTO TABLE xx;
嘿嘿, 我来挖个坟。
不是本人写的,链接在这:
mysql语句:批量更新多条记录的不同值