gpt4 book ai didi

arrays - PostgreSQL 9.4 将 jsonb int 数组扩展到带有行号的表中

转载 作者:行者123 更新时间:2023-11-29 11:47:51 31 4
gpt4 key购买 nike

试图将我的头脑围绕在 postgresql 9.4 jsonb 上,并希望得到一些帮助来弄清楚如何执行以下操作。

给定以下示例 jsonb:

‘{“name1” : value1, “name2” : value2, “name3” : [int1, int2, int3] }’::jsonb AS table1.column1

需要:仅返回“name3”数组,作为返回签名为

的表
TABLE( var_name varchar, var_value int, var_row_num int)

因此生成的数据将如下所示:

(‘name3’, int1, 1)
(‘name3’, int2, 2)
(‘name3’, int3, 3)

假设数组可以是除零以外的任何长度,并且保证“name3”存在。

最佳答案

您可以使用 json_array_elements取消嵌套 column1->'name3'

产生的 json 数组
SELECT 'name3' ,json_array_elements(column1->'name3')
FROM table1;

结果

(‘name3’, int1)
(‘name3’, int2)
(‘name3’, int3)

关于arrays - PostgreSQL 9.4 将 jsonb int 数组扩展到带有行号的表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26691725/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com