将值附加到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')
在JsonColumn
的NULL
值将被更新到{ "Info2":"Value2"}
。
如果JsonColumn
包含Info2
键的另一个值,它将被覆盖。
为什么我们需要合并和{}? – TheGameiswar
@ TheGameiswar,你是对的,我们不需要它。更新... –