azure - 如何从单个 JSON (IOT HUB) 将流分析输出分成多行

标签 azure azure-stream-analytics azure-iot-hub

我有来自 iot hub 的数据,需要将其输入到 SQL 表中。 iot hub 的 JSON 数据如下所示-

[ { “设备ID”:“1”,

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

}, { “设备ID”:“2”,

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

} ]

<小时/>

表格看起来像这样

<小时/>

设备ID|描述 |值

<小时/>

1 | parking 场1 | 10

1 | parking 2 | 20

1 | parking 3 | 30

1 | parking 4 | 40

2 | parking 场1 | 10

2 | parking 2 | 20

<小时/>

需要以下问题的答案-

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

  2. 此外,当设备 ID 在表中匹配时,应将 Parking1、Parking2、Parking3 和 Parking4 的值插入到表中。

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

提前致谢!

最佳答案

查看 JSON,“Parking1”、“Parking2”、“Parking3”、“Parking4” 应该是表列。

您的选择查询应该是

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

此外,由于 ASA 作业的输入(物联网集线器)和输出(SQL Azure)不同,因此只能插入数据而不能更新数据。

关于azure - 如何从单个 JSON (IOT HUB) 将流分析输出分成多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39122345/

相关文章:

azure - 从浏览器端连接到 Azure IoT/事件中心

azure - 通过计费将现有域转移到 Azure

azure - 有没有办法备份或导出Azure IOT组件?

azure - 从空窗口生成输出

azure - 从 IoT Hub(microsoft azure) 获取数据有哪些不同方法?

azure - SAS token - Azure IoTHub

sql - 从 Azure SQL InlineSqlTask​​ 任务创建输出变量 azure devops

azure - Windows 10 驱动程序签名自动化

azure - 将数据从 Azure Linux VM 上传到 Azure Blob 的方法

json - Azure IoT 中心中的消息路由返回 application/octet-stream