使用 InfluxQL 探索数据
要开始使用 InfluxQL 探索数据,请执行以下操作:
通过列出存储桶的 DBRP 映射,验证您的存储桶是否具有数据库和保留策略 (DBRP) 映射。 如果没有,请创建新的 DBRP 映射。
(可选)如果您想使用以下示例中使用的数据,请下载 NOAA 示例数据。
将 InfluxQL
SELECT
语句与其他关键子句结合使用来探索您的数据。
SELECT 语句
使用 SELECT
语句从特定的measurement或多个 measurement 中查询数据。
SELECT <field_key>[,<field_key>,<tag_key>] FROM <measurement_name>[,<measurement_name>]
WHERE 子句
SELECT_clause FROM_clause WHERE <conditional_expression> [(AND|OR) <conditional_expression> [...]]
GROUP BY 子句
使用 GROUP BY
子句按一个或多个指定的标签和/或指定的时间间隔对查询结果进行分组。
SELECT_clause FROM_clause [WHERE_clause] GROUP BY [* | <tag_key>[,<tag_key]]
ORDER BY 子句
使用 ORDER BY
子句按升序或降序对数据进行排序。
SELECT_clause FROM_clause [WHERE_clause] [GROUP_BY_clause] ORDER BY time DESC
LIMIT 和 SLIMIT 子句
使用 LIMIT
和 SLIMIT
子句限制查询中返回的数据点和序列的数量。
SELECT_clause FROM_clause [WHERE_clause] [GROUP_BY_clause] [ORDER_BY_clause] LIMIT <N>
OFFSET 和 SOFFSET 子句
使用 OFFSET
和 SOFFSET
子句对数据点和序列进行分页。
SELECT_clause FROM_clause [WHERE_clause] [GROUP_BY_clause] [ORDER_BY_clause] LIMIT_clause OFFSET <N> [SLIMIT_clause]
时间和时区查询
探索专门用于处理时间的 InfluxQL 功能。 使用 tz
(时区)子句返回指定时区的 UTC 偏移量。
SELECT_clause FROM_clause [WHERE_clause] [GROUP_BY_clause] [ORDER_BY_clause] [LIMIT_clause] [OFFSET_clause] [SLIMIT_clause] [SOFFSET_clause] tz('<time_zone>')
子查询
使用子查询
将查询作为封闭查询中的条件应用。
SELECT_clause FROM ( SELECT_statement ) [...]
正则表达式
使用正则表达式
匹配数据中的模式。
SELECT /<regular_expression_field_key>/ FROM /<regular_expression_measurement>/ WHERE [<tag_key> <operator> /<regular_expression_tag_value>/ | <field_key> <operator> /<regular_expression_field_value>/] GROUP BY /<regular_expression_tag_key>/
下载示例数据
本文档中的 InfluxQL 查询示例使用公开可用的美国国家海洋和大气管理局 (NOAA) 数据。
要下载示例中使用的 NOAA 数据子集,请运行NOAA 水文示例数据下的脚本(例如,将脚本复制并粘贴到您的数据浏览器 - 脚本编辑器中),并将脚本中的“example-org”替换为您的 InfluxDB 组织的名称。
让我们熟悉一下 h2o_feet
measurement 中的数据子样本
输出
时间 | 水位描述 | 位置 | 水位 |
---|---|---|---|
2019-08-18T00:00:00Z | 6 到 9 英尺之间 | coyote_creek | 8.1200000000 |
2019-08-18T00:00:00Z | 低于 3 英尺 | santa_monica | 2.0640000000 |
2019-08-18T00:06:00Z | 6 到 9 英尺之间 | coyote_creek | 8.0050000000 |
2019-08-18T00:06:00Z | 低于 3 英尺 | santa_monica | 2.1160000000 |
2019-08-18T00:12:00Z | 6 到 9 英尺之间 | coyote_creek | 7.8870000000 |
2019-08-18T00:12:00Z | 低于 3 英尺 | santa_monica | 2.0280000000 |
h2o_feet
measurement 中的数据每六分钟出现一次。 此 measurement 有一个标签键 (location
),它有两个标签值:coyote_creek
和 santa_monica
。 该 measurement 还有两个字段:level description
存储字符串字段值,water_level
存储浮点字段值。
在 InfluxQL shell 中配置时间戳
默认情况下,InfluxQL shell 默认以纳秒 UNIX 纪元格式返回时间戳。 要返回人类可读的 RFC3339 时间戳而不是 Unix 纳秒时间戳,请使用精度帮助命令 ` 配置时间戳格式
precision rfc3339
InfluxDB API 默认以 RFC3339 格式返回时间戳。 使用epoch
查询字符串参数指定其他格式。
此页内容是否对您有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一份子! 我们欢迎并鼓励您提供关于 InfluxDB 和本文档的反馈和错误报告。 要获得支持,请使用以下资源:
拥有年度合同或支持合同的客户可以联系 InfluxData 支持。