我有一个数据库,该数据库的表foo
包含一个列id
和一个data
包含以下数据的列:
{
"startDate":"2017-07-04",
"endDate":"2017-07-10",
"notDelegated":false,
"sold":false,
"disableRanking":false,
"type":"PERIOD"
}
我想使用父级更新此数据rangeData
并提取如下type
属性:
{
"rangeData": {
"startDate":"2017-07-04",
"endDate":"2017-07-10",
"notDelegated":false,
"sold":false,
"disableRanking":false
},
"type":"PERIOD"
}
我尝试了很多与JSON
操作员无关的事情。
谢谢您的回答。
使用函数jsonb_build_object()
和删除运算符:
update foo
set data = jsonb_build_object('rangeData', data- 'type', 'type', data->'type');
在上面的函数调用中,您将创建一个包含两个元素的json对象:
key value
-------------------------
'rangeData' data- 'type' json object 'data' from which the key 'type' was removed
'type' data->'type' value of 'type' element of json object 'data'
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句