这个 mysql 语句怎么写?

2018-10-11 16:18:53 +08:00
 yddwinter

mysql 语句:根据 3 个 rowguid 更新不同记录的同一字段为同一值,不用循环。

2993 次点击
所在节点    MySQL
12 条回复
Perterually
2018-10-11 16:29:47 +08:00
三个 rowguid 不同但是有一个字段一样,然后吧三个不用 rowguid 的同一个字段更新成一个值?
TommyLemon
2018-10-11 16:43:26 +08:00
UPDATE 表名 SET 字段名=字段值 WHERE rowguid IN(rowguid1, rowguid2, rowguid3)
jowan
2018-10-11 16:56:00 +08:00
同楼上 WHERE IN 你用 OR 都能拼出来吧
turan12
2018-10-11 17:58:51 +08:00
用 OR 性能更好一些。
yddwinter
2018-10-12 08:51:20 +08:00
@TommyLemon 是这样写的,注意 in('1','2','3')书写就 ok 了
yddwinter
2018-10-12 08:52:45 +08:00
@Perterually 想复杂了老哥,rowguid in('rowguid 1','rowguid 2','rowguid 3')就解决了
yddwinter
2018-10-12 08:53:19 +08:00
@turan12 or 怎么写?
yddwinter
2018-10-12 08:53:52 +08:00
@jowan rowguid 是批量选择出来的
turan12
2018-10-12 10:47:21 +08:00
update table set column='your_value' where rowguid='var_a' or rowguid='var_b' or rowguid='var_c'
Perterually
2018-10-12 18:02:17 +08:00
@yddwinter 我说的就是这个啊。。。解决了就行。。
mmdsun
2018-10-12 20:28:05 +08:00
@turan12 where in or 字段性能差别不大。甚至 where in 更好。MySQL 对于 IN 做了相应的优化匹配很多条件查询会更快
xyjincan
2018-10-30 21:36:08 +08:00
疯了,觉得 sql 短点好

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

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

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

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

© 2021 V2EX