mysql 怎么写sql同时更新多个id的字段值,比如 id为1和2,怎么同时更新它们的name分别为 xxx,ooo

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 怎么写sql同时更新多个id的字段值,比如 id为1和2,怎么同时更新它们的name分别为 xxx,ooo相关的知识,希望对你有一定的参考价值。

一个id的这样更新:
update 表
set 字段1=新值,字段2=新值
where id=1
多个id的建议excel里做好,导入到DB中成为新表,再关联这2张表批量更新:
update 表1
set 字段1=b.新值,字段2=b.新值
from 表1 a, 表2 b
where a.id=b.id
参考技术A 格式:update 表名称 set 字段名称 = 字段名称 + 1 [ where语句]
比如说数据库中有一张student表,要想把id为1的学生成绩(score)加1则
update student set score=score+1 where id = 1
如果你不加where系统就不会知道你具体要更新哪条记录,而导致所有该表中score都增加1,当然,除非这就是你的本意。

Mysql如何更新字段值

使用updata可以更新,但是现在有个问题。
之前的字段例如是“123”,现在变成“1234”,使用updata是将之前的123删除,把1234覆盖进去,如何做到这个“4”是增加进去的,这样的话如果之前的字段有10M,每次改一下,就会快多了。

格式:update 表名称 set 字段名称 = 字段名称 + 1 [ where语句]
比如说数据库中有一张student表,要想把id为1的学生成绩(score)加1则
update student set score=score+1 where id = 1
如果你不加where系统就不会知道你具体要更新哪条记录,而导致所有该表中score都增加1,当然,除非这就是你的本意。
请采纳答案,支持我一下。追问

需要添加的数据是用户自己输入的,不是我可以定义的,我是想用一个表来保存用户实时输入的数据

参考技术A Mysql如何更新字段值
格式:update 表名称 set 字段名称 = 字段名称 + 1 [ where语句]
比如说数据库中有一张student表,要想把id为1的学生成绩(score)加1则
update student set score=score+1 where id = 1
如果你不加where系统就不会知道你具体要更新哪条记录,而导致所有该表中score都增加1,当然,除非这就是你的本意。
参考技术B 使用update语句就可以呀,你说的是替换字符串吗

update 表名 set 字段名=replace(字段名,'123','1234') [ where语句]

将123替换为1234,追问

我的意思不是1234,这样简单的,能否让数据库知道前面是123,后面只用加一个4.
我的123,可能是代表很多很多内容,不管是用updata,还是replace都是操作量比较大的。

追答

那我就 呵呵了,mysql中没有你想的这样功能。你想的难道操作量就不大了?

追问

现在就是想找一个比较好的方法,目前我这里是10个人左右使用,如果人一多的话,就是很卡。实在不行的话,我只有存到客户端本地,然后定期上传服务器了。

以上是关于mysql 怎么写sql同时更新多个id的字段值,比如 id为1和2,怎么同时更新它们的name分别为 xxx,ooo的主要内容,如果未能解决你的问题,请参考以下文章

sql查询字段中所有等于某些值的数据

SQL SERVER,一张表中,有多个字段关联另一张表,怎么写SQL语句?

更新一个表的字段值等于另一个表的字段值的SQL语句要怎么写?

mysql如何更新一个表中的某个字段值等于另一个表的某个字段值

Mysql如果某个字段值存在则更新另一个字段的值为原值+100,命令应该如何写?

mysql如何查询某字段里两个值相加结果等于已知道的一个数字