Как я могу выбрать данные между определенными часами в определенном месяце? - PullRequest
0 голосов
/ 16 мая 2019

У меня уже есть InfluxDB, работающий и получающий данные мониторинга некоторых служб (значение только 1 для повышения и 0 для снижения). Для управления мне нужно выбрать значения из базы данных, которые находятся в конкретном месяце и либо в ночное время, либо в дневное время. Например: я хочу выбрать все данные за апрель 2019 года (неважно, 1 или 0) с 08:00 до 07:00 (дневное время)

Вот что я пробовал:

SELECT value FROM probe_success 
WHERE "instance" = 'https://myservice/api' AND time >= '08:00:00' AND time < '19:00:00' 
AND time >= '2019-04-01' AND time <= '2019-04-30'

Но у меня есть ошибка:

{"results": [{"Statement_id": 0, "error": "недопустимая операция: время и * influenxql.StringLiteral не совместимы "}]}

Может кто-нибудь сказать мне, что я делаю неправильно или указать мне правильное направление?

Большое спасибо!

1 Ответ

0 голосов
/ 27 мая 2019

Хорошо, поэтому после некоторого исследования я обнаружил, что невозможно использовать оператор «ИЛИ» в предложении «ГДЕ» для указания нескольких временных диапазонов.Смотрите это .Я решил эту проблему, отправляя отдельные запросы на каждый день в цикле for, а затем объединял все результаты.Это не лучшее решение, я признаю, но, поскольку они говорят, что это невозможно, я думаю, что это обходной путь.

...