Запрос Azure Stream Analytics - получить последний запрос для всех устройств - PullRequest
1 голос
/ 24 мая 2019

У меня есть IoT Hub, он собирает сообщения со многих устройств.Данные из IoT Hub отправляются в потоковую аналитику, и теперь я бы хотел потоковую аналитику, отобразить список всех устройств вместе с последним запросом.То есть таблица, в которой есть, например, 10 устройств и для каждого устройства свой последний запрос.

Мой фактический код:

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

В этом запросе у меня ошибка на идентификаторе устройства:

GROUP BY with no aggregate expressions is not supported.

Понятия не имею, как решить мою проблему с неподдерживаемым выражением и изменить последний запрос для всех устройств; /

1 Ответ

1 голос
/ 27 мая 2019

GROUP BY без агрегатных выражений не поддерживается.

В соответствии с этим сообщением об ошибке необходимо использовать group by с агрегатным выражением. Все агрегированные выражения, поддерживаемые ASA, перечислены здесь .

Если вы хотите получить последний запрос, я думаю, что TopOne подходит для вас.

enter image description here

Если вы хотите выбрать все данные, соответствующие фильтру, возможно, вы могли бы использовать COUNT с группировкой по.

...