本文介绍两种批量更新数据方法
数据准备
create table account
(
id int auto_increment
primary key,
balance int not null
);
insert into account(balance) values (10),(20);
文章插图
表中数据
1update account t1 inner join (select 1 a,5 b union all select 2 a,15 b ) t2 set t1.balance = t2.b where t1.id = t2.a;
文章插图
执行后结果
2update account t set t.balance = case when id =1 then 20 when id =2 then 20 end where id in (1,2)
文章插图
执行后结果
附:
两种方法受sql语句长度限制 , 和线程内存大小限制 , 需根据服务器情况选择批量更新条数!
【mysql 批量更新的两种方法】
推荐阅读
- Mysql某个表有近千万数据,CRUD比较慢,如何优化?
- 如何更改 Linux 控制台字体类型和大小
- mysql 如何优化left join
- Mysql死锁如何排查?insert on duplicate死锁排查过程分析
- Java架构-MYSQL大数据量下的操作与优化
- 南昌新旧茶馆百年文化变更
- 中医告诉您:冬季为什么更该吃冬虫夏草
- 有没有比光年更大的长度单位 比光年更大的距离单位
- 阔腿裤|到了一定的岁数后,你会发现:宽松的裤子比紧身的版型更时髦实穿
- HR也适合的数据分析工具,更有福利赠送