Azure 流分析查询 - 获取所有设备的最后请求

Azure Stream Analytics Query - get last request for all device

我有 IoT 中心,它从许多设备收集消息。来自 IoT 中心的数据被发送到流分析,现在我想进行流分析,显示所有设备的列表以及最后一个请求。也就是说,table 其中有 10 个设备,每个设备都有其最后一个请求。

我的实际代码:

SELECT
       deviceId,
       param1 as humidity,
       param2 as temperature,
       datetime as data
FROM hubMessage 
GROUP By deviceId, data,temperature,humidity, 
TumblingWindow(minute,5)

关于此查询,我在 deviceId 上有错误:

GROUP BY with no aggregate expressions is not supported.

我不知道如何用不支持的表达式解决我的问题并更改所有设备的最后请求;/

GROUP BY with no aggregate expressions is not supported.

根据此错误消息,您需要将 group by 与聚合一起使用 expression.All 列出了 ASA 支持的聚合表达式 here

如果你想得到最新的请求,我认为TopOne适合你。

如果你想 select 所有数据都匹配过滤器,也许你可以使用 COUNT 和分组依据。