如果是mysql5.7版本以下的,这个字段的值在mysql里面就是个字符串,纯粹的sql语句是不行的,只能把这个字段的值拿出来格式化变成json对象,然后更改值,再放进去;
如果是mysql5.7的话,可以通过新增的json_set函数,来修改json字段的值,希望对你有帮助
如:UPDATE
ecs_goods
SET
integral
=
integral*0.01
WHERE
cat_id
in
(1029,1025,1024,1023)
integral
字段需为数值型,不然会报错。
希望能给你帮助!
update语句可以搞定,但是需要join配合,例如,有个表如下,需要将id =999对应的name改为id=1000对应的name
可以这么做:
1
update person t1 join (select id,name from person where id = 1000 limit 1 ) as t2 on t1.id <= t2.id set t1.name = t2.name where t1.id = 999 and t2.id = 1000
修改后的结果
这样就可以了。。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)