PostgreSQL json_build_array() 函数使用指南
PostgreSQL json_build_array() 函数从可变的参数列表中创建一个可能是异构类型的 JSON 数组并返回。
此函数与 jsonb_build_array() 函数类似。
json_build_array() 语法
这是 PostgreSQL json_build_array() 函数的语法:
json_build_array(VARIADIC any_value) -> JSON
参数
any_value- 必需的。 是一个可变的参数列表。您可以传入任意类型的任意数量的参数。
返回值
PostgreSQL json_build_array() 函数返回一个可能是异构类型的 JSON 数组,其中的参数由可变的参数列表转换而来。
json_build_array() 函数会评估可变参数列表中的每个参数,然后使用 to_json() 将每个参数执行转为 JSON 值后放入最终返回的数组中。
json_build_array() 示例
本示例展示了如何使用 PostgreSQL json_build_array() 函数构建一个 JSON 数组。
SELECT json_build_array(1, 'a', true, row(2, 'b', false));
json_build_array
----------------------------------------------
[1, "a", true, {"f1":2,"f2":"b","f3":false}]这里,我们在函数中使用了 4 个参数: 1, 'a', true, row(2, 'b', false)。
首先,json_build_array() 函数按照 to_json() 将每个参数转为 JSON 值:
to_json(1)返回1to_json('a'::text)返回"a"to_json(true)返回trueto_json(row(2, 'b', false))返回{"f1":2,"f2":"b","f3":false}
然后,json_build_array() 函数将上面的返回值组装成 JSON 数组 [1, "a", true, {"f1":2,"f2":"b","f3":false}] 后返回。