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)
返回1
to_json('a'::text)
返回"a"
to_json(true)
返回true
to_json(row(2, 'b', false))
返回{"f1":2,"f2":"b","f3":false}
然后,json_build_array()
函数将上面的返回值组装成 JSON 数组 [1, "a", true, {"f1":2,"f2":"b","f3":false}]
后返回。