将值附加到SQL 2016中的JSON对象/修改JSON对象(SQL Server JSON数据)

问题描述:

我在SQL2016数据库中有一个JSON列,并且我想将一个键值对添加到JSON对象的根。将值附加到SQL 2016中的JSON对象/修改JSON对象(SQL Server JSON数据)

的JSON列的内容应从

{"Info1":"Value1"}

被改变,以

{"Info1":"Value1", "Info2":"Value2"}

有了SQL Server 2016年,它可以使用内置的函数来处理完成JSON数据。下面的函数将返回修改JSON数据:

JSON_MODIFY(JsonColumn, '$.Info2', 'Value2') 

表达可以在正常UPDATE语句中使用:

UPDATE Table1 
SET JsonColumn = JSON_MODIFY(JsonColumn, '$.Info2', 'Value2') 

JsonColumnNULL值将被更新到{ "Info2":"Value2"}

如果JsonColumn包含Info2键的另一个值,它将被覆盖。

+0

为什么我们需要合并和{}? – TheGameiswar

+0

@ TheGameiswar,你是对的,我们不需要它。更新... –