我有一个 JSON 文件,C:\sensors\201802091904.json
. 此数据文件与 PostgreSQL 安装位于同一本地驱动器上。
这是 JSON 的示例:
[
{"Data": " ** collection of property-value pairs ** }} ", "EventId": "", "Timestamp": ""},
{"Data": " ** collection of property-value pairs ** }} ", "EventId": "", "Timestamp": ""},
{"Data": " ** collection of property-value pairs ** }} ", "EventId": "", "Timestamp": ""}
]
Data
属性值是一个 JSON 对象,包含观察结果以及有关传感器的数据。
我想将文件的内容加载到 PostgreSQL 11 表中。我想将 Data 属性值加载到 JSON 列类型中。如果可能的话,我想将元属性加载EventId
到Timestamp
它们自己的列中,但我稍后会弄清楚。
我找到了这个例子,但它并没有产生我们想要的结果。整个 JSON 块最终在一个字段中。我们需要将每个 JSON 对象{"Data": " ** collection of property-value pairs ** }} ", "EventId": "", "Timestamp": ""}
插入到自己的行中。
这是迄今为止最成功的尝试:
XXX =# \set content `type C:\sensors\201802091904.json`
XXX =# create table t2 ( j jsonb );
XXX =# insert into t2 values (:'content');
XXX =# select * from t2;
如何在 Windows 10 上将 JSON 文件加载到 PostgreSQL 11?