InfluxDB:查询以同时从两个时间范围内选择数据



我正在使用InfluxDB获取东京证券交易所的即时报价数据,交易发生在09:30至11:30(上午时段)之间,然后从12:30至15:00(下午时段),午休时间为11:30至12:30。我有兴趣分析两次会议的数据,但不是午休时间的数据。

以下查询有效并给我结果

SELECT COUNT(<fieldname>) FROM <measurementname> where
(time >= '2017-11-01 09:00:00' and time < '2017-11-01 11:30:00') and
<other_conditions>

以下查询也有效并给我结果

SELECT COUNT(<fieldname>) FROM <measurementname> where 
(time >= '2017-11-01 12:30:00' and time < '2017-11-01 15:00:00') 
and <other_conditions>

但是如果我尝试以下操作,它不起作用:我得到一个带有警告的空结果(没有返回任何序列)

SELECT COUNT(<fieldname>) FROM <measurementname> where 
((time >= '2017-11-01 09:00:00' and time < '2017-11-01 11:30:00') or (time >= '2017-11-01 12:30:00' and time < '2017-11-01 15:00:00')) 
and <other_conditions>

如何将 AM 和 PM 会话的两个时间条件合并到一个查询中?

对于最近的 InfluxDB 2.X 版本,它现在使用 Flux 进行查询,这里有针对此类问题的解决方案:https://community.influxdata.com/t/query-specific-time-range-and-day/14503

最新更新