json_extract_path()
是一个用于提取指定路径下 JSON 子对象的系统函数。它等效于运算符 #>
。
json_extract_path()
在 PostgreSQL 9.3 中添加。
用法
json_extract_path (from_json
json
, VARIADICpath_elems
text[]
) →json
如果未找到有效路径,则返回 NULL
。
此函数提供了一种替代运算符 #>
的方法,当例如生成参数化路径值列表时,它更易于使用。
更改历史记录
- PostgreSQL 9.3
- 添加 (提交 a570c98d)
示例
json_extract_path()
的基本用法示例
postgres=# SELECT json_extract_path( $$ {"foo": {"bar": "bip"}, "bar": {"bat": "bop", "baz": "zoo"}} $$, 'bar', 'baz' ); json_extract_path ------------------- "zoo" (1 row)
这等效于
postgres=# SELECT $$ {"foo": {"bar": "bip"}, "bar": {"bat": "bop", "baz": "zoo"}} $$::json #> '{bar, baz}'; ?column? ---------- "zoo" (1 row)
参考
- PostgreSQL 文档: JSON 处理函数
另请参阅
json_extract_path_text(),jsonb_extract_path()