【发布时间】:2019-05-15 06:54:15
【问题描述】:
使用基于 Postgres 8.4 的 Greenplum 5.* 数据库。
我正在使用 row_to_json 和 array_to_json 函数来创建 JSON 输出;但这最终在 JSON 中具有具有空值的键。 Postgres 最新版本有 json_strip_null 函数来删除具有空值的键。
我需要将生成的 JSON 文件导入 MongoDB;但 mongoimport 也没有选择忽略 JSON 中的空键。
我尝试了一种方法来创建带有 null 的 JSON 文件,然后使用 sed 从 JSON 文件中删除 null 字段。
sed -i 's/\(\(,*\)"[a-z_]*[0-9]*":null\(,*\)\)*/\3/g' output.json
但是寻找一种方法来做它自己的数据库,因为它会更快。有什么建议如何在Greenplum中渲染json_strip_null函数而不影响查询性能?
【问题讨论】: