使用 InfluxQL 探索您的模式
InfluxDB 3 Core 处于公开 Alpha 阶段
InfluxDB 3 Core 处于公开 alpha 阶段,可用于测试和反馈,但不适用于生产环境。产品和本文档均在不断完善中。我们欢迎并鼓励您提供关于 alpha 体验的反馈,并邀请您加入我们的公共频道以获取更新和分享反馈。
使用 InfluxQL SHOW
语句返回有关您的数据模式的信息。
InfluxDB v1 到 InfluxDB 3 数据模型
InfluxQL 围绕 InfluxDB v1 数据模型设计,但仍可用于查询 InfluxDB 3 Core 中的数据。当使用 InfluxDB 3 Core InfluxQL 实现时,数据模型在以下方面有所不同
- InfluxDB v1 的数据库和保留策略组合合并为一个 InfluxDB 3 数据库实体。
- InfluxDB v1 的measurement(度量)等同于 InfluxDB 3 的 table(表)。
- 列出数据库中的 measurements(度量)
- 列出 measurement(度量)中的 field keys(字段键)
- 列出 measurement(度量)中的 tag keys(标签键)
- 列出特定 tag key(标签键)的 tag values(标签值)
示例数据
以下示例使用示例数据集中提供的数据。要运行示例查询并返回相同的结果,请按照为每个示例数据集提供的说明将数据写入您的 InfluxDB 3 Core 数据库。
列出数据库中的 measurements(度量)
使用 SHOW MEASUREMENTS
列出您的 InfluxDB 数据库中的 measurements(度量)。
SHOW MEASUREMENTS
列出包含特定标签键值对的 measurements(度量)
要仅返回具有特定标签键值对的 measurements(度量),请包含一个 WHERE
子句,其中包含要查询的标签键值对。
SHOW MEASUREMENTS WHERE room = 'Kitchen'
列出与正则表达式匹配的 measurements(度量)
要仅返回名称与正则表达式匹配的 measurements(度量),请包含一个 WITH
子句,将 MEASUREMENT
与正则表达式进行比较。
SHOW MEASUREMENTS WITH MEASUREMENT =~ /^home/
列出 measurement(度量)中的 field keys(字段键)
使用 SHOW FIELD KEYS
返回 measurement(度量)中的所有 field keys(字段键)。包含一个 FROM
子句以指定 measurement(度量)。如果未指定 measurement(度量),则查询返回数据库中的所有 field keys(字段键)。
SHOW FIELD KEYS FROM home
列出 measurement(度量)中的 tag keys(标签键)
使用 SHOW TAG KEYS
返回 measurement(度量)中的所有 tag keys(标签键)。包含一个 FROM
子句以指定 measurement(度量)。如果未指定 measurement(度量),则查询返回数据库中的所有 tag keys(标签键)。
SHOW TAG KEYS FROM home_actions
列出包含特定标签键值对的 measurements(度量)中的 tag keys(标签键)
要返回包含特定标签键值对的 measurements(度量)的所有 tag keys(标签键),请包含一个 WHERE
子句,其中包含要查询的标签键值对。
SHOW TAG KEYS WHERE room = 'Kitchen'
列出特定 tag key(标签键)的 tag values(标签值)
使用 SHOW TAG VALUES
返回 measurement(度量)中特定标签的所有值。
- 包含一个
FROM
子句以指定要查询的一个或多个 measurements(度量)。 - 使用
WITH
子句将KEY
与要列出值的 tag keys(标签键)进行比较。 - 使用
WHERE
子句将搜索限制在特定时间范围内(默认时间范围是最近一天)。
SHOW TAG VALUES FROM weather WITH KEY = location
包含 FROM 子句
我们强烈建议在 SHOW TAG VALUES
语句中包含 FROM
子句,以指定 1-50 个表进行查询。如果没有 FROM
子句,InfluxDB 查询引擎必须从所有表中读取数据,并从每个表中返回唯一的标签值。
根据数据库中表的数量以及每个表中唯一标签值的数量,排除 FROM
子句可能会导致查询性能不佳、查询超时或不必要的资源分配,这可能会影响其他查询。
列出多个标签的 tag values(标签值)
要返回多个特定 tag keys(标签键)的 tag values(标签值),请在 WITH
子句中使用 IN
运算符将 KEY
与 tag keys(标签键)列表进行比较。
SHOW TAG VALUES FROM home_actions WITH KEY IN ("level", "action")
列出与正则表达式匹配的标签的 tag values(标签值)
要仅从与正则表达式匹配的 tag keys(标签键)返回 tag values(标签值),请在您的 WITH
子句中使用正则表达式比较运算符将 KEY
与正则表达式进行比较。
SHOW TAG VALUES FROM home, home_actions WITH KEY =~ /oo/
列出与特定标签键值对关联的 tag values(标签值)
要列出与特定标签键值对关联的标签的 tag values(标签值)
- 使用
WITH
子句来标识要为其返回值的 tag keys(标签键)。 - 包含一个
WHERE
子句,用于标识要查询的标签键值对。
以下示例返回 action
和 level
标签的 tag values(标签值),其中 room
标签值为 Kitchen
。
SHOW TAG VALUES FROM home_actions WITH KEY IN ("action", "level") WHERE room = 'Kitchen'
此页面是否对您有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一份子!我们欢迎并鼓励您提供关于 InfluxDB 3 Core 和本文档的反馈和错误报告。要寻求支持,请使用以下资源
拥有年度或支持合同的客户可以联系 InfluxData 支持。