influxdb.select() 函数
influxdb.select()
是由包作者维护的用户贡献函数。
influxdb.select()
是 from()
、range()
、filter()
和 pivot()
的替代实现,它返回透视的查询结果并屏蔽 _measurement
、_start
和 _stop
列。结果类似于 InfluxQL SELECT
语句返回的结果。
函数类型签名
(
from: string,
m: A,
start: B,
?fields: [string],
?host: string,
?org: string,
?stop: C,
?token: string,
?where: (
r: {
D with
_value: E,
_time: time,
_stop: time,
_start: time,
_measurement: string,
_field: string,
},
) => bool,
) => stream[F] where A: Equatable, F: Record
有关更多信息,请参阅函数类型签名。
参数
from
(必需) 要查询的存储桶的名称。
start
(必需) 结果中包含的最早时间。
结果包括与指定的开始时间匹配的点。使用相对持续时间、绝对时间或整数(Unix 时间戳,以秒为单位)。例如,-1h
、2019-08-28T22:00:00Z
或 1567029600
。持续时间相对于 now()
。
stop
结果中包含的最晚时间。默认为 now()
。
结果排除与指定的停止时间匹配的点。使用相对持续时间、绝对时间或整数(Unix 时间戳,以秒为单位)。例如,-1h
、2019-08-28T22:00:00Z
或 1567029600
。持续时间相对于 now()
。
m
(必需) 要查询的测量名称。
fields
要查询的字段列表。默认为 []
。
当列表为空或未指定时,返回所有字段。
where
单个参数谓词函数,评估结果为 true
或 false
,并根据标签值筛选结果。默认为 (r) => true
。
记录在字段透视到列之前传递给函数。评估结果为 true
的记录包含在输出表中。评估结果为空或 false
的记录不包含在输出表中。
host
要查询的 InfluxDB 实例的 URL。
请参阅 InfluxDB OSS URL 或 InfluxDB Cloud 区域。
org
组织名称。
token
InfluxDB API 令牌。
示例
查询单个字段
import "contrib/jsternberg/influxdb"
influxdb.select(from: "example-bucket", start: -1d, m: "example-measurement", fields: ["field1"])
查询多个字段
import "contrib/jsternberg/influxdb"
influxdb.select(
from: "example-bucket",
start: -1d,
m: "example-measurement",
fields: ["field1", "field2", "field3"],
)
查询所有字段并按标签筛选
import "contrib/jsternberg/influxdb"
influxdb.select(
from: "example-bucket",
start: -1d,
m: "example-measurement",
where: (r) => r.host == "host1" and r.region == "us-west",
)
从远程 InfluxDB Cloud 实例查询数据
import "contrib/jsternberg/influxdb"
import "influxdata/influxdb/secrets"
token = secrets.get(key: "INFLUXDB_CLOUD_TOKEN")
influxdb.select(
from: "example-bucket",
start: -1d,
m: "example-measurement",
fields: ["field1", "field2"],
host: "https://us-west-2-1.aws.cloud2.influxdata.com",
org: "example-org",
token: token,
)
此页是否对您有帮助?
感谢您的反馈!