jsonb_strip_nulls()

用于从 JSONB 值中删除空值的函数

jsonb_strip_nulls() 是一个系统函数,用于从给定的 JSONB 值中删除所有具有 null 值的对象字段。

jsonb_strip_nulls()PostgreSQL 9.5 中添加。

用法

jsonb_strip_nulls ( jsonb ) → jsonb

删除将递归执行。 不是对象字段的 null 值将不会被移除。

变更历史

示例

json_strip_nulls() 的基本用法示例

postgres=# SELECT jsonb_strip_nulls('[{"foo":1, "bar":null}]');
 jsonb_strip_nulls 
-------------------
 [{"foo": 1}]
(1 row)

删除是递归的

postgres=# SELECT jsonb_strip_nulls($$
  [{
    "foo":
      {
         "bar":1,
         "baz":null
      }
  }]
$$);
   jsonb_strip_nulls   
-----------------------
 [{"foo": {"bar": 1}}]
(1 row)

不是对象字段的 null 值将不会被删除

postgres=# SELECT jsonb_strip_nulls('[1,null]'); 
 jsonb_strip_nulls 
-------------------
 [1, null]
(1 row)

分类

JSON系统函数

另请参阅

json_strip_nulls(),jsonb_set_lax()

反馈

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