InfluxDB入门系列教程⑥ 查询数据

一、HTTP查询示例

curl -G 'http://localhost:8086/query?pretty=true' --data-urlencode "db=mydb" --data-urlencode "q=SELECT \"value\" FROM \"cpu_load_short\" WHERE \"region\"='us-west'"
  • HTTP接口是InfluxDB查询数据的主要方式。
  • GET请求到http://localhost:8086/query路径
  • db=mydb 选择数据库
  • q=SELECT "value" FROM "cpu_load_short" WHERE "region"='us-west' 查询语句
    • 查询value字段
    • 从cpu_load_showt表
    • 条件 region=‘us-west’

二、基础SELECT查询

SELECT <field_key>[,<field_key>,<tag_key>] FROM <measurement_name>[,<measurement_name>]

2.1 返回所有的field和tag

SLECT *

2.2返回多个field和tag

SELECT "<field_key>","<field_key>"

2.3 从单个measurement返回数据

FROM <measurement_name>

2.4 从多个measurement中返回数据

FROM <measurement_name>,<measurement_name>

2.5 从一个完全指定的measurement中返回数据

这个完全指定是指指定了数据库和存储策略。

FROM <database_name>.<retention_policy_name>.<measurement_name>

2.6 从一个用户指定的数据库中返回存储策略为DEFAULT的数据。

FROM <database_name>..<measurement_name>

三、条件SELECT查询

SELECT_clause FROM_clause WHERE <conditional_expression> [(AND|OR) <conditional_expression> [...]]

3.1 查询有特定field的key value的数据

> SELECT * FROM "h2o_feet" WHERE "water_level" > 8

name: h2o_feet
--------------
time                   level description      location       water_level
2015-08-18T00:00:00Z   between 6 and 9 feet   coyote_creek   8.12
2015-08-18T00:06:00Z   between 6 and 9 feet   coyote_creek   8.005
[...]
2015-09-18T00:12:00Z   between 6 and 9 feet   coyote_creek   8.189
2015-09-18T00:18:00Z   between 6 and 9 feet   coyote_creek   8.084

3.2 根据时间戳来过滤数据

该查询返回来自h2o_feet,该measurement在过去七天内的数据。

> SELECT * FROM "h2o_feet" WHERE time > now() - 7d

四、升降序ORDER BY TIME DESC

  • 默认情况下,InfluxDB以升序的顺序返回结果; 返回的第一个点具有最早的时间戳
  • ORDER BY time DESC反转该顺序,使得InfluxDB首先返回具有最新时间戳的点

五、LIMIT

  • LIMIT <N>从指定的measurement中返回前N个数据点。
  • 如果N大于measurement的点总数,InfluxDB返回该measurement中的所有点
> SELECT "water_level","location" FROM "h2o_feet" LIMIT 3

name: h2o_feet
time                   water_level   location
----                   -----------   --------
2015-08-18T00:00:00Z   8.12          coyote_creek
2015-08-18T00:00:00Z   2.064         santa_monica
2015-08-18T00:06:00Z   8.005         coyote_creek

六、OFFSET

  • OFFSET <N>从查询结果中返回分页的N个数据点
  • 查询结果从第N个数据点开始

七、LIMIT N OFFSET M

  • 查询结果从第M个数据点开始的后N个数据点

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/kangweijian/article/details/109676396