当前位置:   article > 正文

mysql之更新、移除json格式的数据的属性_mysql update json 中的属性 csdn

mysql update json 中的属性 csdn

schema格式:(uid为主键)

uid,name,age,pro

数据样式:

'100','tom',18,'{"attr1:''湖北省-武汉市"}'

mysql中对pro进行添加属性

要求实现:

对pro添加一个attr2的属性,如果不存在此属性,则添加;如果存在此属性,则更新。

事先将pro为null的记录去除掉(无效、垃圾数据)

实现语句:

insert into student values('100','hgc','28',CONCAT('{"attr2":','"18-19"}'))
ON DUPLICATE KEY UPDATE pro=json_set(pro,'$.attr2','北京市-海淀区')

情况1:如不存在此主键记录,则插入记录及属性attr2:18-19

执行:

情况2:主键记录存在,attr2属性不存在,则增加attr属性,值为北京市-海淀区

首先移除掉100的attr2属性:

update student set pro = json_remove(pro,'$.attr2') where id='100'

执行:

执行第一句:

insert into student values('100','hgc','28',CONCAT('{"attr2":','"18-19"}'))
ON DUPLICATE KEY UPDATE pro=json_set(pro,'$.attr2','北京市-海淀区')

情况2:主键记录存在,attr2属性存在,则增加attr属性,值为上海市-徐汇区

执行语句:

insert into student values('100','hgc','28',CONCAT('{"attr2":','"18-19"}'))
ON DUPLICATE KEY UPDATE pro=json_set(pro,'$.attr2','上海市-徐汇区')

执行效果:

更多学习、面试资料尽在微信公众号:Hadoop大数据开发

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/297060
推荐阅读
相关标签
  

闽ICP备14008679号