SQL使用update一次更新多条
页面限制 直接将数据从库里导入
这种方式适用于着急在页面中显示数据,但是数据量又大,不是很全,过不了校验
普通的更新语句:
update tb_xxx set a = b where id = **
如标题所说,那是一种情况,还有一种情况是,着急测试,一下几千条数据入库了,但是发现某个值是错的,或者是需要修改,但是对应的表的原数据没有预留脚本,在加入了多条后完全分不清哪个是哪个,这时候就需要批量更新了
UPDATE tb_happy
SET id_card = CASE user_name
when ‘张三’ then ‘12312312312’
when ‘张子’ then ‘5645645’
when ‘张才’ then ‘79879789’
when ‘张利’ then ‘12354345897’
when ‘张英’ then ‘1237809746’
<等等–中间可以嵌入多个when-then>
END
WHERE user_name IN(,,*,)
需要把最后的 IN 中的范围写清楚,这样能对应的更新数据;如果没写可能将会影响到多行。
在紧急情况下,当大量数据已快速导入数据库但需要修正时,SQL的CASE语句结合WHEREIN条件可以用于批量更新特定记录。例如,要根据用户姓名修改ID卡号,可以编写一个UPDATE语句,用CASE...WHEN...THEN结构对应不同用户进行更新,确保只影响目标记录。
2万+

被折叠的 条评论
为什么被折叠?



