2016-08-24 22 views
1

我有来自iot hub的数据,需要将其提供给SQL表。 IOT毂的JSON数据看起来像这 -如何从单个JSON(物联网集线器)将流分析输出转换为多行

[ { “的DeviceID”: “1”,

"Parking1": 50, 
"Parking2": 49, 
"Parking3": 37, 
"Parking4": 35 

},{ “的DeviceID”: “2”,

"Parking1": 45, 
"Parking2": 54, 
"Parking3": 37, 
"Parking4": 35 

} ]


而表看起来像这样


DeviceId |描述|值


1 |停车1 | 10

1 |停车2 | 20

1 |停车3 | 30

1 |停车4 | 40

2 |停车1 | 10

2 |停车2 | 20


如果你需要为floowing-

  1. 所以,我需要,以便查询解析JSON数据写在流分析查询,并提到其置于4行的表以上。让我知道需要写什么查询来转换表中每一行的每个键。

  2. 当设备ID与表格匹配时,Parking1,Parking2,Parking3和Parking4的值也应该插入表中。

  3. 此外,每次表中的值都应该更新不插入。

在此先感谢!

+0

您是否有灵活性的数据发送方式?如果您可以将停车信息作为单独的记录发送,则可以使用GetRecordProperties()将其转换为您需要的形状https://msdn.microsoft.com/en-us/library/azure/mt270221.aspx。ASA不支持SQL输出的更新,如果保留所有数据是可以接受的,则可以添加timestamp列并写入视图以获取deviceId,parkingId组合的最新值。 –

回答

0

通过你的JSON,“Parking1”,“Parking2”,“Parking3”,“Parking4”应该是表列。

你选择查询应该是

SELECT DeviceID, Parking, Parkign2, Parking3, Parking4 
    INTO <SQLOutput> 
    FROM <InputStream> 

此外,作为输入(IOT毂)和输出(SQL天青)是用于一个ASA作业不同,数据只能被插入没有更新。