如何在PostgreSQL中推送到JSONB列中JSON对象内部的数组

0ejtzxu1  于 2023-01-12  发布在  PostgreSQL
关注(0)|答案(1)|浏览(106)

我在PostgreSQL的JSONB列中有以下数据。

{
    "myFirstDeck" : {
        "cards": [1, 2, 3]
    }
}

我想使用一个内置的JSONB PostgreSQL函数将一个整数推/追加到myFirstDeck键/对象内部的卡数组中。
如有任何帮助,我们将不胜感激。
我尝试过使用jsonb_set和concatenation的各种变体,但是很难让它工作。

wh6knrhe

wh6knrhe1#

您可以使用jsonb_insert()
下面的代码将值4追加到数组的末尾

jsonb_insert(the_column, '{myFirstDeck,cards,-1}', to_jsonb(4), true)

但是如果您发现自己经常这样做,那么您应该认真考虑使用适当规范化的数据模型,而不是滥用JSON。

相关问题