MySQL的Update语句Set顺序问题_MySQL
程序员文章站
2022-04-08 13:48:45
...
bitsCN.com
1. 测试一create table test(id int, tag int, num int);
insert into test (id, tag, num) values(1, 1, 1), (2,2, 2), (3,3,3);
update test set tag = 4, num=case when tag=4 then 4 else 3 endwhere tag=3;
select * from test;
(1)sqlserver2014的结果:
(2)MySQL的结果:
2. 测试二:更换set语句的顺序create table test(id int, tag int, num int);
insert into test (id, tag, num) values(1, 1, 1), (2,2, 2), (3,3,3);
update test set num=case when tag=4 then 4 else 3 end, tag = 4
insert into test (id, tag, num) values(1, 1, 1), (2,2, 2), (3,3,3);
update test set tag = 4, num=case when tag=4 then 4 else 3 endwhere tag=3;
select * from test;
(1)sqlserver2014的结果:
(2)MySQL的结果:
2. 测试二:更换set语句的顺序create table test(id int, tag int, num int);
insert into test (id, tag, num) values(1, 1, 1), (2,2, 2), (3,3,3);
update test set num=case when tag=4 then 4 else 3 end, tag = 4
推荐阅读
-
有关mysql中sql的执行顺序的小问题
-
MySQL的逻辑查询语句的执行顺序
-
Mysql查询语句使用select.. for update导致的数据库死锁分析
-
Python中LOADDATAINFILE语句导入数据到MySQL遇到问题的解决方案分享
-
mysql update语句的执行过程详解
-
完美解决mysql in条件语句只读取一条信息问题的2种方案
-
mysql中的update set select的sql语法实例讲解
-
Mysql使用kill命令解决死锁问题(杀死某条正在执行的sql语句)
-
mysql 中sql语句关键字的书写顺序与执行顺序
-
mysql语句执行顺序是怎么样的,导致查询语句不同结果