设为首页 加入收藏

TOP

时序数据库InfluxDB安装及使用(五)
2019-09-02 23:29:33 】 浏览:94
Tags:时序 数据库 InfluxDB 安装 使用
Z' AND time <= '2015-08-18T00:30:00Z' GROUP BY time(12m) name: h2o_feet time percentile ---- ---------- 2015-08-17T23:48:00Z 2015-08-18T00:00:00Z 2.064 2015-08-18T00:12:00Z 2.028 2015-08-18T00:24:00Z 2.041 > SELECT PERCENTILE("water_level",40) FROM "h2o_feet" WHERE time >= '2015-08-17T23:48:00Z' AND time <= '2015-08-18T00:30:00Z' GROUP BY time(12m) name: h2o_feet time percentile ---- ---------- 2015-08-17T23:48:00Z 2015-08-18T00:00:00Z 2.1162015-08-18T00:12:00Z 2.126 2015-08-18T00:24:00Z 2.051

SAMPLE(field_key, N)

随机返回field key的N个值。如果语句中有GROUP BY time(),则每组数据随机返回N个值。

> SELECT SAMPLE("water_level",2) FROM "h2o_feet" WHERE time >= '2015-08-17T23:48:00Z' AND time <= '2015-08-18T00:30:00Z';
name: h2o_feet
time                         sample
----                         ------
2015-08-18T00:00:00Z         2.064
2015-08-18T00:12:00Z         2.028
> SELECT SAMPLE("water_level",2) FROM "h2o_feet" WHERE time >= '2015-08-17T23:48:00Z' AND time <= '2015-08-18T00:30:00Z' GROUP BY time(12m);
name: h2o_feet
time                         sample
----                         ------
2015-08-18T00:06:00Z         2.116
2015-08-18T00:06:00Z         8.005
2015-08-18T00:12:00Z         7.887
2015-08-18T00:18:00Z         7.762
2015-08-18T00:24:00Z         7.635
2015-08-18T00:30:00Z         2.051

CUMULATIVE_SUM(field_key)

计算字段值的递增和。

> SELECT CUMULATIVE_SUM("water_level") FROM "h2o_feet" WHERE time >= '2015-08-17T23:48:00Z' AND time <= '2015-08-18T00:30:00Z';
name: h2o_feet
time                                     cumulative_sum
----                                     --------------
2015-08-18T00:00:00Z                      8.12
2015-08-18T00:00:00Z                      10.184
2015-08-18T00:06:00Z                      18.189
2015-08-18T00:06:00Z                      20.305
2015-08-18T00:12:00Z                      28.192
2015-08-18T00:12:00Z                      30.22
2015-08-18T00:18:00Z                      37.982
2015-08-18T00:18:00Z                      40.108
2015-08-18T00:24:00Z                      47.742999999999995
2015-08-18T00:24:00Z                      49.78399999999999
2015-08-18T00:30:00Z                      57.28399999999999
2015-08-18T00:30:00Z                      59.334999999999994

DERIVATIVE(field_key, unit) 和 NON_NEGATIVE_DERIVATIVE(field_key, unit)

计算字段值的变化比。unit默认为1s,即计算的是1秒内的变化比。

如下面的第一个数据计算方法是 (2.116-2.064)/(6*60) = 0.00014..,其他计算方式同理。虽然原始数据是6m收集一次,但是这里的变化比默认是按秒来计算的。如果要按6m计算,则设置unit为6m即可。

> SELECT DERIVATIVE("water_level") FROM "h2o_feet" WHERE "location" = 'santa_monica' AND time >= '2015-08-18T00:00:00Z' AND time <= '2015-08-18T00:30:00Z'name: h2o_feet
time                                      derivative
----                                       ----------
2015-08-18T00:06:00Z                     0.00014444444444444457
2015-08-18T00:12:00Z                     -0.00024444444444444465
2015-08-18T00:18:00Z                     0.0002722222222222218
2015-08-18T00:24:00Z                     -0.000236111111111111
2015-08-18T00:30:00Z                     0.00002777777777777842
> SELECT DERIVATIVE("water_level", 6m) FROM "h2o_feet" WHERE "location" = 'santa_monica' AND time >= '2015-08-18T00:00:00Z' AND time <= '2015-08-18T00:30:00Z'name: h2o_feet
time                                       derivative
----                                       ----------
2015-08-18T00:06:00Z                     0.052000000000000046
2015-08-18T00:12:00Z                     -0.08800000000000008
2015-08-18T00:18:00Z                     0.09799999999999986
2015-08-18T00:24:00Z                     -0.08499999999999996
2015-08-18T00:30:00Z                     0.010000000000000231

 

而DERIVATIVE结合GROUP BY time,以及mean可以构造更加复杂的查询,如下所示:

> SELECT DERIVATIVE(mean("water_level"), 6m) F
首页 上一页 2 3 4 5 6 7 下一页 尾页 5/7/7
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇SQLServer之函数简介 下一篇拆分字符串为单一字符

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目