首页 > 解决方案 > 使用 JSON_MODIFY 更新/替换数组

问题描述

我在包含数组类型 key 的表列中有 json 对象roles。我正在尝试替换roles值,但它是替换现有角色,添加新的内部角色。这是db fiddler

当前结果:

{
  "roles": {"roles":[{....}]}
 }

预期结果:

{
  "roles":[{....}]
}

任何帮助都会得到帮助。谢谢。

标签: sqltsql

解决方案


我最初回答的重点是完全重建 JSON,这就是我添加, ROOT ('roles').

所以你不需要使用JSON_MODIFY,只需替换整个列。

或者,例如,如果您有 JSON 的其他部分,则可以删除, ROOT ('roles')并保留JSON_MODIFY


推荐阅读