墙外烧酒 2022-06-23 10:31 采纳率: 50%
浏览 44
已结题

mysql更新数组形式的json串

表A中有一字段B存储的是数组形式的json串,如:
[
{
"id":20190926000000213,
"skuCode":"11108893",
"skuName":"测试名称1"
},
{
"id":20190926000000214,
"skuCode":"11108892",
"skuName":"测试名称2"
}
]
现需要批量更新skuCode=11108892对应的skuName
已知可以写sql如下:
update 表名称 set 字段B=replace(字段B,'测试名称2','正式名称')
where json_contains(字段B ,json_object('skuCode','11108892'))

上述sql可以查询出skucode包含11109982的数据并替换测试名称2为正式名称。
但是若存在数据如下:

[
{
"id":20190926000000213,
"skuCode":"11108888",
"skuName":"测试名称21"
},
{
"id":20190926000000214,
"skuCode":"11108892",
"skuName":"测试名称2"
}
]
则skucode为11108888的,name也会被替换,变成正式名称1。
不知道有没有什么别的方案

  • 写回答

2条回答

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

      • 系统已结题 7月2日
      • 已采纳回答 6月24日
      • 修改了问题 6月23日
      • 修改了问题 6月23日
      • 展开全部

      悬赏问题

      • ¥20 二阶矩阵对角化和弹力平衡运动方程问题求解
      • ¥15 multisim10安装后,找不到NI License Manager的程序来安装许可证
      • ¥15 C++银行卡系统 Help!
      • ¥15 JS如何把上面这种数据类型转换成下面这种的
      • ¥15 ubuntu 16.04.2 oss上传文件并显示耗时
      • ¥15 存储过程调用没有进行逻辑计算
      • ¥20 Kali破解WIFI密码中出现这个问题是什么意思
      • ¥15 R语言数据分析的相关问题
      • ¥15 模型导入SP后贴图纹理只有一个,拆了四张UV的,怎么解决?
      • ¥15 检索带order by 非常慢