Как получить 5 лучших результатов в притоке после суммы значений за период - PullRequest
0 голосов
/ 30 августа 2018

Учитывая приведенное ниже измерение в InfluxDB, я хочу отобразить таблицу в Grafana с результатами Top 2, состоящими из наиболее часто встречающихся устройств для данного датчика. Таким образом, ожидаемый результат для приведенных ниже данных будет таблица с 2 буксировками

device                               total
------                               ----
345678                               7
234567                               3
> select * from incoming_events_by_device limit 50;
name: incoming_events_by_device
time                device                               host   metric_type sensor    value
----                ------                               ----   ----------- ------    -----
1535575550000000000 123456                               foo.com counter     efg       1
1535575550000000000 123456                               foo.com counter     efg       1
1535575550000000000 234567                               foo.com counter     efg       1
1535575550000000000 234567                               foo.com counter     hij       2
1535575550000000000 234567                               foo.com counter     efg       1
1535575550000000000 345678                               foo.com counter     nice      1
1535575550000000000 358168                               foo.com counter     nice      1
1535575550000000000 345678                               foo.com counter     nice      1
1535575550000000000 345678                               foo.com counter     nice      4
1535575550000000000 345678                               foo.com counter     efg       1
1535575550000000000 345678                               foo.com counter     efg       12

Я попытался использовать подобный подзапрос, но не получил ожидаемый результат. Это показывает пустой ответ.

ВЫБРАТЬ верх (входящее_устройство_count, 5) ОТ (ВЫБРАТЬ сумму (устройство) в качестве входящего_устройства_count ОТ входящего_вента_в_устройстве ГДЕ датчик = 'приятно' И время> сейчас () - 30 м групп по устройству)

1 Ответ

0 голосов
/ 30 августа 2018

Найден запрос.

выберите top (total, 3), device from (выберите sum (value) как total из входящих_events_by_device, где sensor = 'nice' AND time> now () - группировка по устройству на 30 м);

...