我想创建一个新的json对象,并向该json添加一些值
这是数据库中的json:
{
"test2": {
"1": "1",
"3": "3"
}
}
我可以创建一个名称为test3的对象,并放置一些这样的数据
update USERS
set ACTIVITY =
JSON_MODIFY(JSON_QUERY(Activity),'$.favorite.test3',JSON_QUERY('{"a": "b"}'))
where USER_ID = 14
结果是:
{
"test2": {
"1": "1",
"3": "3"
},
"test3": {
"a": "b"
}
}
但是当我尝试使用json_modify来保留所有以前的数据时(如果存在,将添加新数据)。 数据不会添加到不存在的对象,也不会创建对象
update USERS
set ACTIVITY = JSON_MODIFY(JSON_QUERY(Activity),'$.favorite.test3',JSON_MODIFY(JSON_QUERY(ACTIVITY,'$.favorite.test3'),'$.c','d'))
where USER_ID = 14
date将被添加到test3,只要存在test3。 我这样做是因为我无法从json数组中删除空数据,并决定将我的json数组更改为json对象
json_modify(@json,test2[0],NULL)
{
"test2": {
"1": null,
"3": "3"
}
}