使用JSON数据从Azure流分析查询Power BI输出

时间:2018-12-05 21:47:33

标签: json azure stream powerbi analytics

从IOT集线器到Azure流分析再到Power BI提取数据时遇到问题。

以下是来自Stream Analytics的数据:

{  
   "header":{  
      "version":1
   },
   "data":{  
      "treatmentId":"1",
      "machineData":[  
         {  
            "recordId":3,
            "records":[  
               {  
                  "fields":[  
                     {  
                        "value":"+182",
                        "key":"VP"
                     }
                  ],
                  "group":"PR"
               }
            ]
         }
      ]
   },
   "EventProcessedUtcTime":"2018-12-05T16:52:43.6450807Z",
   "PartitionId":0,
   "EventEnqueuedUtcTime":"2018-12-05T16:38:47.1900000Z",
   "IoTHub":{  
      "CorrelationId":null

   }
}

使用以下查询:

SELECT * 
INTO DataPowerBI
FROM iothub;

我在PowerBI中得到以下输出:

enter image description here

我无法在“数据”下获取子级数据,例如治疗ID,机器数据,组,键。我是否可以查询有关推送父级和子级所有数据的查询?

提前谢谢! 拉吉

1 个答案:

答案 0 :(得分:1)

通过使用select *,您只能返回上一级数据字段。如果需要嵌套的数据,则需要指定所需的数据。

选择数据。treatmentid将为您提供treatmentId

我不确定嵌套中的嵌套如何工作。你可以试试 选择data.machinedata.recordId以获取recordId。