我有一个像下面这样的JSON,其中“报告”包含多个具有不同名称的对象。我需要使用Azure数据工厂将每个对象转换为数据库的行。
{
"reports": {
"Z1-B5(CR)-L5-M": {
"location_id": 1580,
"date": "2023-05-24",
"h19": 0,
"h20": 0,
"h21": 0,
"h22": 0,
"h23": 0,
"peak_hour": 10,
"total": 6,
"location_name": "Z1-B5(CR)-L5-M"
},
"Z2-B22(FC)-L1-M": {
"location_id": 1589,
"date": "2023-05-24",
"h19": 0,
"h20": 0,
"h21": 0,
"h22": 0,
"h23": 0,
"peak_hour": 14,
"total": 212,
"location_name": "Z2-B22(FC)-L1-F"
}
}
}
预期输出:
1条答案
按热度按时间lawou6xi1#
reports
是一组对象,因此您必须使用Azure数据流和ADF活动的组合。我需要提取reports
属性中的键,使用该属性创建一个对象数组,其中每个对象表示一行。reports
属性键被提取到第一行。,
作为分隔符拆分字符串,并使用生成的数组迭代每个循环。对原始源文件使用第二次查找(Lookup2)来提取数据。openjson
在查询中使用上述变量数据。如果是任何其他格式,请将此变量写入新文件,并使用复制数据活动复制到数据库表中。以下是管道JSON供参考。