range() 函数
range()
函数根据时间范围过滤行。
输入数据必须有一个类型为时间的 _time
列。具有 _time
列中空值的行将被过滤。range()
添加一个具有 start
值的 _start
列和一个具有 stop
值的 _stop
列。_start
和 _stop
列添加到分组键中。每个输入表的分组键值被修改以适应时间范围。所有行都在时间范围之外的表将被完全过滤。
函数类型签名
(<-tables: stream[{C with _time: time}], start: A, ?stop: B) => stream[{C with _time: time, _stop: time, _start: time}]
参数
start
(必需) 包含在结果中的最早时间。
结果 包括 与指定开始时间匹配的 _time
值的行。使用相对持续时间、绝对时间或整数(秒的 Unix 时间戳)。例如,-1h
、2019-08-28T22:00:00Z
或 1567029600
。持续时间相对于 now()
。
stop
包含在结果中的最晚时间。默认值为 now()
。
结果 排除 与指定停止时间匹配的 _time
值的行。使用相对持续时间、绝对时间或整数(秒的 Unix 时间戳)。例如,-1h
、2019-08-28T22:00:00Z
或 1567029600
。持续时间相对于 now()
。
tables
输入数据。默认是管道转发数据(<-
)。
示例
查询相对于现在的时间范围
from(bucket: "example-bucket")
|> range(start: -12h)
查询绝对时间范围
from(bucket: "example-bucket")
|> range(start: 2021-05-22T23:30:00Z, stop: 2021-05-23T00:00:00Z)
使用 Unix 时间戳查询绝对时间范围
from(bucket: "example-bucket")
|> range(start: 1621726200, stop: 1621728000)
这个页面有帮助吗?
感谢您的反馈!