让我们假设我有一个表users,它有一个JSON列“foo”。该列的值如下所示:
"{ field1: ['bar', 'bar2', 'bar3'], field2: ['baz', 'baz2', 'baz3'] }"
其中field1和field2是可选的,因此列值可能如下所示:"{}"
我想将此表中所有记录的值'bar2'和'bar3'从field1移动到field2。
样本输出:
"{ field1: ['bar'], field2: ['baz', 'baz2', 'baz3', 'bar2', 'bar3']}"
更多示例:
"{ field1: ['bar3'], field2: ['baz', 'baz2', 'baz3'] }"
应该转变成
"{ field1: [], field2: ['baz', 'baz2', 'baz3', 'bar3'] }"
等等的。
有什么办法可以做到这一点吗?
不幸的是,我不知道如何处理这个问题。
1条答案
按热度按时间mgdq6dx11#
在
jsonb_array_elements
中使用一系列子查询See fiddle