我有一个带有数组字段的 Json,我想迭代该数组并将其拆分为数组中包含的每个属性的新行或对象。我目前正在使用 Apache Nifi,但我也可以使用 python 脚本。我的输入数据是:{ "workorder_id" : "99999", "properties" : [ { "id" : "11", "propertyType" : { "id" : "55834595398", "name" : "action" }, "stringValue" : "string01", "nodeValue" : null }, { "id" : "22", "propertyType" : { "id" : "55834595419", "name" : "Tipo" }, "stringValue" : "string02", "nodeValue" : null }, { "id" : "33", "propertyType" : { "id" : "44", "name" : "Action2" }, "stringValue" : "string02", "nodeValue" : null }, { "id" : "55", "propertyType" : { "id" : "55834595400", "name" : "Action3" }]}输出可以是 Json 或 csv。例如在 csv 中:使用相同的 workorder_id 作为键workorder_id,id_properties,stringValue_properties99999,11,string0199999,22,string0299999,33,string03...感谢您的帮助
1 回答
一只甜甜圈
TA贡献1836条经验 获得超5个赞
使用 NiFi
按此顺序:
EvaluateJsonPath 从 workorder_id (
$.workorder_id
)创建属性输出将它发送到 Split Json
$.properties.*
splitjson 的输出将它发送到 evaluatejson,您将在其中提取数组。
id = $.id propertyType_id = $.propertyType.id propertyType_name = $.propertyType.name
现在您的每个流程都将带有此属性:
workorder_id,id,propertyType_id,propertyType_name
使用此列表使用 AttributestoCSV
workorder_id,id,propertyType_id,propertyType_name
合并内容
putfile(保存你的 csv)
添加回答
举报
0/150
提交
取消