在 MYSQL 里能否一步完成同表同字段的 update 更新呢?

2015-04-20 17:16:58 +08:00
 jookr

tab1
id name telphone address
1 a1 a2 a3
2 b1 b2 b3

在MYSQL里想用id=2的name(b1) 去更新替换id=1的name(a1)

以前的流程分两步
先查出值id=2的$name = tab2.name
然后更新updata tab1 set name=$name where id = 1

上面这个两步能否合并成一步(一条SQL)完成呢?

2653 次点击
所在节点    MySQL
4 条回复
xiao303178394
2015-04-20 17:31:13 +08:00
update tab1 t,tab1 t2 set t.name = t2.name where t.id = 1 and t2.id =2;
commit;
Septembers
2015-04-20 17:34:06 +08:00
jookr
2015-04-20 17:35:16 +08:00
@xiao303178394 灰常感谢
jookr
2015-04-20 17:35:41 +08:00
@Septembers 谢谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/185000

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX