json_strip_nulls()
是一个系统函数,用于从给定的 JSON
值中删除所有具有 null
值的对象字段。
json_strip_nulls()
添加于 PostgreSQL 9.5。
用法
json_strip_nulls (json
) →json
删除操作将递归执行。不是对象字段的 null
值不会被移除。
变更历史
- PostgreSQL 9.5
- 添加 (提交 237a8824)
示例
json_strip_nulls()
的基本用法示例
postgres=# SELECT json_strip_nulls('[{"foo":1, "bar":null}]'); json_strip_nulls ------------------ [{"foo":1}] (1 row)
删除是递归的
postgres=# SELECT json_strip_nulls($$ [{ "foo": { "bar":1, "baz":null } }] $$); json_strip_nulls --------------------- [{"foo":{"bar":1}}] (1 row)
不是对象字段的 null
值不会被去除
postgres=# SELECT json_strip_nulls('[1,null]'); json_strip_nulls ------------------ [1,null] (1 row)
参考
- PostgreSQL 文档: JSON 处理函数