![](/img/trans.png)
[英]Put variable inside json_extract_path_text in postgresql query
[英]Parse JSONarray in PostgreSQL Query using json_extract_path_text and json_array_elements
我有一个 PostgreSQL 查询,如下所示,它可以正常工作并按预期返回 foo。
SELECT json_extract_path_text('{"f2":{"f3":1},"f4":{"f5":99,"f6":"foo"}}','f4', 'f6') as foo
这是行不通的。 它只返回 null。
SELECT json_extract_path_text('{"f2":{"f3":1},"f4":[{"f5":99,"f6":"foo"},{"f5":99,"f6":"foo"}]}','f4', 'f6') as foo
我已经尝试了在PostgreSQL Function网站上可以找到的所有功能组合。 因此我的问题是,如何到达 json 数组中的 foo?
所以我确实让它起作用了,但似乎必须有更好的方法:
SELECT
json_extract_path_text(
json_array_elements(
cast(json_extract_path_text('{"f2":{"f3":1},"f4":[{"f5":99,"f6":"foo"},{"f5":99,"f6":"foo"}]}'::json,'f4') as json
)
),'f6'
) as foo
找到了另一种方法来完成可能有用的类似事情
someJsonColumn::json #>> '{someObj,0,SomeObj,0}' as myJsonField
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.