influxDB-查询操作

influxDB-查询操作

 1 #----综合使用
 2 书写顺序
 3 select distinct * from '表名' where '限制条件'  group by '分组依据' having '过滤条件' order by  limit '展示条数'
 4 执行顺序
 5 from       -- 查询
 6 where      -- 限制条件
 7 group by   -- 分组
 8 having     -- 过滤条件
 9 order by   -- 排序
10 limit      -- 展示条数
11 distinct   -- 去重
12 select     -- 查询的结果

 

1.查询数据表weather 的所有记录:

> select * from weather
name: weather
time altitude area humidity temperature
---- -------- ---- -------- -----------
1607604432455278300 1001 南 -5 10
1607656595672442800 1000 东 -4 9
1607656662027484500 1001 南 -5 11
1607656706278952000 999 南 -5 11
1607656751612223600 1002 西 -2 11
1607656799728402900 1003 东 -2 11

2.按条件查询

#查询temperature=11的数据

> select * from weather where temperature=11
name: weather
time                altitude area humidity temperature
----                -------- ---- -------- -----------
1607656662027484500 1001     南    -5       11
1607656706278952000 999      南    -5       11
1607656751612223600 1002     西    -2       11
1607656799728402900 1003     东    -2       11
#查询altitude,temperature两列的数据
> select altitude,temperature from weather
name: weather
time altitude temperature
---- -------- -----------
1607604432455278300 1001 10
1607656595672442800 1000 9
1607656662027484500 1001 11
1607656706278952000 999 11
1607656751612223600 1002 11
1607656799728402900 1003 11

  

3.排序

#按最新时间排序
> select * from weather order by time desc
name: weather
time                altitude area humidity temperature
----                -------- ---- -------- -----------
1607656799728402900 1003     东    -2       11
1607656751612223600 1002     西    -2       11
1607656706278952000 999      南    -5       11
1607656662027484500 1001     南    -5       11
1607656595672442800 1000     东    -4       9
1607604432455278300 1001     南    -5       10

#按最早时间排序
> select * from weather order by time asc
name: weather
time                altitude area humidity temperature
----                -------- ---- -------- -----------
1607604432455278300 1001     南    -5       10
1607656595672442800 1000     东    -4       9
1607656662027484500 1001     南    -5       11
1607656706278952000 999      南    -5       11
1607656751612223600 1002     西    -2       11
1607656799728402900 1003     东    -2       11

4.去重 (distinct)

> select distinct humidity from weather
name: weather
time distinct
---- --------
0    -5
0    -4
0    -2

5.group by

select 查询字段1,查询字段2,... from 表名
      where 过滤条件
      group by分组依据  # 分组后取出的是每个组的第一条数据

6.聚合

 

7.limit限制条数

#显示一条信息
> select * from weather limit 1
name: weather
time                altitude area humidity temperature
----                -------- ---- -------- -----------
1607604432455278300 1001     南    -5       10

#limit 10 offset 15,就是从第15行开始之后的10条数据
> select * from weather limit 2 offset 2
name: weather
time                altitude area humidity temperature
----                -------- ---- -------- -----------
1607656662027484500 1001     南    -5       11
1607656706278952000 999      南    -5       11

8.or

influxDB中没有in的操作,但是有or。对于习惯了mysql的in来说,用or就需要在代码中循环了。

上一篇:mysql -数据库设计三范式


下一篇:整除算法题