json_populate_record()

将 JSON 对象扩展到行的函数

json_populate_record() 是一个系统函数,用于将顶层 JSON 对象扩展到具有指定基类型的复合类型的行。

json_populate_record()PostgreSQL 9.3 中添加。

用法

json_populate_record ( base anyelement, from_json json ) → anyelement

有关详细规范,请参阅 PostgreSQL 文档

更改历史

示例

对于 json_populate_record() 的独立示例,需要创建一个自定义类型

postgres=# CREATE TYPE keyrec AS (key INT, val TEXT);
CREATE TYPE

该类型如下所示,由 json_populate_record() 引用

postgres=# SELECT * FROM json_populate_record(
               NULL::keyrec,
               '{"key": 1,"val": "foo"}'
           );
 key | val 
-----+-----
   1 | foo
(1 row)

字段与任何输出列不对应的值将被忽略

postgres=# SELECT * FROM json_populate_record(
               NULL::keyrec,
               '{"key": 1,"val": "foo", "bar": "baz"}'
           ); 
 key | val 
-----+-----
   1 | foo
(1 row)

分类

JSON系统函数

另请参阅

json_populate_recordset()jsonb_populate_record()jsonb_populate_record_valid()

反馈

请在此提交关于 "json_populate_record()" 的任何评论、建议或更正 此处