mysql更新多条数据6_mysql语句:批量更新多条记录的不同值
mysql更新语句很简单,更新一条数据的某个字段,一般这样写:
如果更新同一字段为同一个值,mysql也很简单,修改下where即可:
这里注意 ‘other_values’ 是一个逗号(,)分隔的字符串,如:1,2,3
那如果更新多条数据为不同的值,可能很多人会这样写:
即是循环一条一条的更新记录。一条记录update一次,这样性能很差,也很容易造成阻塞。
那么能不能一条sql语句实现批量更新呢?mysql并没有提供直接的方法来实现批量更新,但是可以用点小技巧来实现。
这里使用了case when 这个小技巧来实现批量更新。
举个例子:
这句sql的意思是,更新display_order 字段,如果id=1 则display_order 的值为3,如果id=2 则 display_order 的值为4,如果id=3 则 display_order 的值为5。
即是将条件语句写在了一起。
这里的where部分不影响代码的执行,但是会提高sql执行的效率。确保sql语句仅执行需要修改的行数,这里只有3条数据进行更新,而where子句确保只有3行数据执行。
如果更新多个值的话,只需要稍加修改:
到这里,已经完成一条mysql语句更新多条记录了。
但是要在业务中运用,需要结合服务端语言,这里以php为例,构造这条mysql语句:
这个例子,有8条记录进行更新。代码也很容易理解,你学会了吗?
mysql更新多条数据6_mysql语句:批量更新多条记录的不同值相关推荐
- mysql怎样添加一条数据_sql语句怎么添加一条记录?
展开全部 sql语句中,添加记录的语法为:insert into 表名 (col1,col2....coln)values(value1,value2.....valuen): 其中,如果你插入的每一 ...
- php怎么更新多条数据,PHP中批量更新数据表中多条记录
class test { /** * 创建像这样的查询: "IN('a','b')"; * * @author wengxianhu * @created to 2013-05-2 ...
- MySQL 8——学习笔记03(插入、更新、删除 数据 [DML语句]、查询数据 [DQL语句])
MySQL 8--学习笔记03(插入.更新.删除 数据 [DML语句]) 一.插入数据 1.1 插入所有字段.插入部分字段 1.2 同时插入多条记录(批量插入) 1.3 将查询结果插入到表中 二.更新 ...
- sql进行批量更新或者一条sql写出批量更新的语句
有表如下 t_user:字段如下 id,name,phone t_phone:字段如下 uid,phone 其中t_phone表的uid字段是外键并且唯一,他引用t_user的id字段,现需要将t_p ...
- mysql根据id删除数据sql语句_删除数据sql-sql数据库删除数据-sql中实现数据删除的语句是...
怎样用sql语言删除一行数据 在SQL数据库中删除记录一般使用Delete语句,下面就将为您介绍SQL中用于删除记录的DELETE语句的语法 DELETE FROM 表名称 WHERE 列名称 = 值 ...
- mysql 新增更新_MySQL新增数据,存在就更新,不存在就添加(转帖加实测)
参考链接:https://blog.csdn.net/tiantang_1986/article/details/78037804 https://blog.csdn.net/woshihaiyong ...
- mybatis笔记之一次插入多条数据sql语句写法
mybatis笔记之一次插入多条数据sql语句写法
- oracle常用插入一条语句,Oracle:用一条 INSERT 语句批量插入多条记录
用一条 INSERT 语句批量插入多条记录,实例如下: 先建立这样一个表 T: SQL> DESC T Name Null? Type ---- ...
- mysql 批量更新数据 备份_mysql 批量更新与批量更新多条记录的不同值实现方法...
批量更新 mysql更新语句很简单,更新一条数据的某个字段,一般这样写: UPDATE mytable SET myfield = 'value' WHERE other_field = 'other ...
最新文章
- 内存和外存的主要区别_内存与外存的关键区别有哪些?
- linux tac sed,Day08 - 一些常用 Linux 指令 - 3-7 (cat、tac、head、tail、vi、sed)
- java ReentrantLock 锁相关笔记
- selenium使用js进行点击
- vs 设置起始页不见了_发朋友圈屏蔽爸妈,结果不小心设置成了仅家人可见...场面一发不可收拾哈哈哈哈!...
- vSphere 故障排除之网络篇
- springboot2.0新特性
- 自动驾驶应用加速 模拟仿真技术是关键之一
- codeforces 1384A(构造)
- 层叠上下文、层叠等级、层叠顺序
- excel中图片导入mysql_把Excel的数据(文字、图片)导入MySQL数据库
- doc文件批量转换成htm以及htm批量转成xlsx
- win10卸载软件_教你彻底关闭Win10自动更新,以及卸载预装应用
- 世界上云平台有很多,但叫机智云的只有一个。
- Home键和返回键的区别
- World Streamer学习4
- KAIST : Multispectral Pedestrian Detection: Benchmark Dataset and Baseline
- C语言输出 1到20 的阶乘之和
- 自定义报表是这样实现的
- 【赛迪智库】美国允许自动驾驶汽车取消方向盘对我国L4级自动驾驶的影响
热门文章
- 这款耳机堪比千元级的AirPods
- K8S精华问答 | 应用和运行时平台是怎样解耦的?
- var let const 区别
- mysql bin oct_python 讲解进制转换 int、bin、oct、hex
- nacos 开启权限验证后 报错状态 403
- uniapp H5页面打包发布
- docker: Error response from daemon: driver failed programming external connectivity
- Jmeter 使用脚本 生成html测试报告
- Mybatis Generator 配置详解
- SpringBoot集成Flowable_Jsite待办任务菜单报500