通过上篇博客,我们已经简单认识了InfluxDB了,其实在实际使用中,我们最常用的就是查询了,这篇博客就详细了解下InfluxDB的查询操作
一、常用查询
1、从单个measurement查询所有的field和tag
SELECT * FROM measurement_name where tag='serverA'
2、从单个measurement查询所有的field
SELECT *::field FROM measurement_name
3、从单个measurement查询特定的field和tag
SELECT "tag_name","tag_name","field_name" FROM measurement_name
4、从多个measurement中查询数据
select * from "measurement_name","measurement_name1"
5、模糊查询
(1)前缀匹配
select * from measurement_name where field=~/^给定字段/
(2)后缀匹配
select * from measurement_name where field=~/给定字段$/
(3) 包含
select * from measurement_name where field=~/给定字段/
二、select语句常见的问题
1、select查询时,至少要有一个field key,单独查tag是不可以的
2、查看tag的值用show
show tag values from "measurement_name" with key="tag_name"
3、 查询的字段值是字符串类型的,需要加单引号
4、查询的字段名是特别的(比如字段名与Influx的关键词一样),需要加双引号
三、常用函数
(1)count()函数
作用:返回一个(field)字段中的非空值的数量
SELECT COUNT(<field_key>) FROM <measurement_name> [WHERE <stuff>] [GROUP BY <stuff>]
(2)DISTINCT()函数
作用:返回一个字段(field)的唯一值
SELECT DISTINCT(<field_key>) FROM <measurement_name> [WHERE <stuff>] [GROUP BY <stuff>]
(3)MEAN() 函数
作用:返回一个字段(field)中的值的算术平均值(平均值)。字段类型必须是长整型或float64。
SELECT MEAN(<field_key>) FROM <measurement_name> [WHERE <stuff>] [GROUP BY <s

本文详细介绍InfluxDB的查询语句、常用函数,以及常见问题解决方案,包括基本查询、函数应用如COUNT、AVG等,以及如何处理特殊场景和数据类型。
最低0.47元/天 解锁文章
5536





