doc: update query result
This commit is contained in:
parent
e886a140d5
commit
385c4934d2
|
@ -20,21 +20,22 @@ taosBenchmark --start-timestamp=1600000000000 --tables=100 --records=10000000 --
|
||||||
|
|
||||||
```sql
|
```sql
|
||||||
SELECT * FROM meters
|
SELECT * FROM meters
|
||||||
WHERE voltage > 10
|
WHERE voltage > 230
|
||||||
ORDER BY ts DESC
|
ORDER BY ts DESC
|
||||||
LIMIT 5
|
LIMIT 5;
|
||||||
```
|
```
|
||||||
|
|
||||||
上面的 SQL,从超级表 `meters` 中查询出电压 `voltage` 大于 10 的记录,按时间降序排列,且仅输出前 5 行。查询结果如下:
|
上面的 SQL,从超级表 `meters` 中查询出电压 `voltage` 大于 230 的记录,按时间降序排列,且仅输出前 5 行。查询结果如下:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
ts | current | voltage | phase | groupid | location |
|
ts | current | voltage | phase | groupid | location |
|
||||||
==========================================================================================================
|
============================================================================================================
|
||||||
2023-11-14 22:13:10.000 | 1.1294620 | 18 | 0.3531540 | 8 | California.MountainView |
|
2023-11-15 06:13:10.000 | 14.0601978 | 232 | 146.5000000 | 10 | California.Sunnyvale |
|
||||||
2023-11-14 22:13:10.000 | 1.0294620 | 12 | 0.3631540 | 2 | California.Campbell |
|
2023-11-15 06:13:10.000 | 14.0601978 | 232 | 146.5000000 | 1 | California.LosAngles |
|
||||||
2023-11-14 22:13:10.000 | 1.0294620 | 16 | 0.3531540 | 1 | California.Campbell |
|
2023-11-15 06:13:10.000 | 14.0601978 | 232 | 146.5000000 | 10 | California.Sunnyvale |
|
||||||
2023-11-14 22:13:10.000 | 1.1294620 | 18 | 0.3531540 | 2 | California.Campbell |
|
2023-11-15 06:13:10.000 | 14.0601978 | 232 | 146.5000000 | 5 | California.Cupertino |
|
||||||
2023-11-14 22:13:10.000 | 1.1294620 | 16 | 0.3431540 | 7 | California.PaloAlto |
|
2023-11-15 06:13:10.000 | 14.0601978 | 232 | 146.5000000 | 4 | California.SanFrancisco |
|
||||||
|
Query OK, 5 row(s) in set (0.145403s)
|
||||||
```
|
```
|
||||||
|
|
||||||
## 聚合查询
|
## 聚合查询
|
||||||
|
@ -52,24 +53,24 @@ SELECT groupid,avg(voltage)
|
||||||
FROM meters
|
FROM meters
|
||||||
WHERE ts >= "2022-01-01T00:00:00+08:00"
|
WHERE ts >= "2022-01-01T00:00:00+08:00"
|
||||||
AND ts < "2023-01-01T00:00:00+08:00"
|
AND ts < "2023-01-01T00:00:00+08:00"
|
||||||
GROUP BY groupid
|
GROUP BY groupid;
|
||||||
```
|
```
|
||||||
|
|
||||||
上面的 SQL,查询超级表 `meters` 中,时间戳大于等于 `2022-01-01T00:00:00+08:00`,且时间戳小于 `2023-01-01T00:00:00+08:00` 的数据,按照 `groupid` 进行分组,求每组的平均电压。查询结果如下:
|
上面的 SQL,查询超级表 `meters` 中,时间戳大于等于 `2022-01-01T00:00:00+08:00`,且时间戳小于 `2023-01-01T00:00:00+08:00` 的数据,按照 `groupid` 进行分组,求每组的平均电压。查询结果如下:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
groupid | avg(voltage) |
|
groupid | avg(voltage) |
|
||||||
==========================================
|
======================================
|
||||||
8 | 9.104040404040404 |
|
8 | 243.961981544901079 |
|
||||||
5 | 9.078333333333333 |
|
5 | 243.961981544901079 |
|
||||||
1 | 9.087037037037037 |
|
1 | 243.961981544901079 |
|
||||||
7 | 8.991414141414142 |
|
7 | 243.961981544901079 |
|
||||||
9 | 8.789814814814815 |
|
9 | 243.961981544901079 |
|
||||||
6 | 9.051010101010101 |
|
6 | 243.961981544901079 |
|
||||||
4 | 9.135353535353536 |
|
4 | 243.961981544901079 |
|
||||||
10 | 9.213131313131314 |
|
10 | 243.961981544901079 |
|
||||||
2 | 9.008888888888889 |
|
2 | 243.961981544901079 |
|
||||||
3 | 8.783888888888889 |
|
3 | 243.961981544901079 |
|
||||||
Query OK, 10 row(s) in set (0.042446s)
|
Query OK, 10 row(s) in set (0.042446s)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -110,24 +111,24 @@ TDengine 按如下方式处理数据切分子句。
|
||||||
```sql
|
```sql
|
||||||
SELECT location, avg(voltage)
|
SELECT location, avg(voltage)
|
||||||
FROM meters
|
FROM meters
|
||||||
PARTITION BY location
|
PARTITION BY location;
|
||||||
```
|
```
|
||||||
|
|
||||||
上面的示例 SQL 查询超级表 `meters`,将数据按标签 `location` 进行分组,每个分组计算电压的平均值。查询结果如下:
|
上面的示例 SQL 查询超级表 `meters`,将数据按标签 `location` 进行分组,每个分组计算电压的平均值。查询结果如下:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
location | avg(voltage) |
|
location | avg(voltage) |
|
||||||
=========================================================
|
======================================================
|
||||||
California.SantaClara | 8.793334320000000 |
|
California.SantaClara | 243.962050000000005 |
|
||||||
California.SanFrancisco | 9.017645882352941 |
|
California.SanFrancisco | 243.962050000000005 |
|
||||||
California.SanJose | 9.156112940000000 |
|
California.SanJose | 243.962050000000005 |
|
||||||
California.LosAngles | 9.036753507692307 |
|
California.LosAngles | 243.962050000000005 |
|
||||||
California.SanDiego | 8.967037053333334 |
|
California.SanDiego | 243.962050000000005 |
|
||||||
California.Sunnyvale | 8.978572085714285 |
|
California.Sunnyvale | 243.962050000000005 |
|
||||||
California.PaloAlto | 8.936665800000000 |
|
California.PaloAlto | 243.962050000000005 |
|
||||||
California.Cupertino | 8.987654066666666 |
|
California.Cupertino | 243.962050000000005 |
|
||||||
California.MountainView | 9.046297266666667 |
|
California.MountainView | 243.962050000000005 |
|
||||||
California.Campbell | 9.149999028571429 |
|
California.Campbell | 243.962050000000005 |
|
||||||
Query OK, 10 row(s) in set (2.415961s)
|
Query OK, 10 row(s) in set (2.415961s)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -201,19 +202,19 @@ SLIMIT 2;
|
||||||
|
|
||||||
```text
|
```text
|
||||||
tbname | _wstart | _wend | avg(voltage) |
|
tbname | _wstart | _wend | avg(voltage) |
|
||||||
==========================================================================================
|
======================================================================================
|
||||||
d40 | 2021-12-31 15:59:05.000 | 2021-12-31 16:00:05.000 | 4.000000000000000 |
|
d2 | 2021-12-31 23:59:05.000 | 2022-01-01 00:00:05.000 | 253.000000000000000 |
|
||||||
d40 | 2021-12-31 16:00:05.000 | 2021-12-31 16:01:05.000 | 5.000000000000000 |
|
d2 | 2022-01-01 00:00:05.000 | 2022-01-01 00:01:05.000 | 244.166666666666657 |
|
||||||
d40 | 2021-12-31 16:01:05.000 | 2021-12-31 16:02:05.000 | 8.000000000000000 |
|
d2 | 2022-01-01 00:01:05.000 | 2022-01-01 00:02:05.000 | 241.833333333333343 |
|
||||||
d40 | 2021-12-31 16:02:05.000 | 2021-12-31 16:03:05.000 | 7.666666666666667 |
|
d2 | 2022-01-01 00:02:05.000 | 2022-01-01 00:03:05.000 | 243.166666666666657 |
|
||||||
d40 | 2021-12-31 16:03:05.000 | 2021-12-31 16:04:05.000 | 9.666666666666666 |
|
d2 | 2022-01-01 00:03:05.000 | 2022-01-01 00:04:05.000 | 240.833333333333343 |
|
||||||
d40 | 2021-12-31 16:04:05.000 | 2021-12-31 16:05:05.000 | 15.199999999999999 |
|
d2 | 2022-01-01 00:04:05.000 | 2022-01-01 00:05:05.000 | 244.800000000000011 |
|
||||||
d41 | 2021-12-31 15:59:05.000 | 2021-12-31 16:00:05.000 | 4.000000000000000 |
|
d26 | 2021-12-31 23:59:05.000 | 2022-01-01 00:00:05.000 | 253.000000000000000 |
|
||||||
d41 | 2021-12-31 16:00:05.000 | 2021-12-31 16:01:05.000 | 7.000000000000000 |
|
d26 | 2022-01-01 00:00:05.000 | 2022-01-01 00:01:05.000 | 244.166666666666657 |
|
||||||
d41 | 2021-12-31 16:01:05.000 | 2021-12-31 16:02:05.000 | 9.000000000000000 |
|
d26 | 2022-01-01 00:01:05.000 | 2022-01-01 00:02:05.000 | 241.833333333333343 |
|
||||||
d41 | 2021-12-31 16:02:05.000 | 2021-12-31 16:03:05.000 | 10.666666666666666 |
|
d26 | 2022-01-01 00:02:05.000 | 2022-01-01 00:03:05.000 | 243.166666666666657 |
|
||||||
d41 | 2021-12-31 16:03:05.000 | 2021-12-31 16:04:05.000 | 8.333333333333334 |
|
d26 | 2022-01-01 00:03:05.000 | 2022-01-01 00:04:05.000 | 240.833333333333343 |
|
||||||
d41 | 2021-12-31 16:04:05.000 | 2021-12-31 16:05:05.000 | 9.600000000000000 |
|
d26 | 2022-01-01 00:04:05.000 | 2022-01-01 00:05:05.000 | 244.800000000000011 |
|
||||||
Query OK, 12 row(s) in set (0.021265s)
|
Query OK, 12 row(s) in set (0.021265s)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -256,18 +257,18 @@ SLIMIT 1;
|
||||||
|
|
||||||
```text
|
```text
|
||||||
tbname | _wstart | avg(voltage) |
|
tbname | _wstart | avg(voltage) |
|
||||||
================================================================
|
=============================================================
|
||||||
d40 | 2021-12-31 15:59:30.000 | 4.000000000000000 |
|
d2 | 2021-12-31 23:59:30.000 | 248.333333333333343 |
|
||||||
d40 | 2021-12-31 16:00:00.000 | 5.666666666666667 |
|
d2 | 2022-01-01 00:00:00.000 | 246.000000000000000 |
|
||||||
d40 | 2021-12-31 16:00:30.000 | 4.333333333333333 |
|
d2 | 2022-01-01 00:00:30.000 | 244.666666666666657 |
|
||||||
d40 | 2021-12-31 16:01:00.000 | 5.000000000000000 |
|
d2 | 2022-01-01 00:01:00.000 | 240.833333333333343 |
|
||||||
d40 | 2021-12-31 16:01:30.000 | 9.333333333333334 |
|
d2 | 2022-01-01 00:01:30.000 | 239.500000000000000 |
|
||||||
d40 | 2021-12-31 16:02:00.000 | 9.666666666666666 |
|
d2 | 2022-01-01 00:02:00.000 | 243.833333333333343 |
|
||||||
d40 | 2021-12-31 16:02:30.000 | 10.000000000000000 |
|
d2 | 2022-01-01 00:02:30.000 | 243.833333333333343 |
|
||||||
d40 | 2021-12-31 16:03:00.000 | 10.333333333333334 |
|
d2 | 2022-01-01 00:03:00.000 | 241.333333333333343 |
|
||||||
d40 | 2021-12-31 16:03:30.000 | 10.333333333333334 |
|
d2 | 2022-01-01 00:03:30.000 | 241.666666666666657 |
|
||||||
d40 | 2021-12-31 16:04:00.000 | 13.000000000000000 |
|
d2 | 2022-01-01 00:04:00.000 | 244.166666666666657 |
|
||||||
d40 | 2021-12-31 16:04:30.000 | 15.333333333333334 |
|
d2 | 2022-01-01 00:04:30.000 | 244.666666666666657 |
|
||||||
Query OK, 11 row(s) in set (0.013153s)
|
Query OK, 11 row(s) in set (0.013153s)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -291,12 +292,12 @@ SLIMIT 1;
|
||||||
|
|
||||||
```text
|
```text
|
||||||
tbname | _wstart | _wend | avg(voltage) |
|
tbname | _wstart | _wend | avg(voltage) |
|
||||||
=================================================================================================================
|
======================================================================================
|
||||||
d28 | 2021-12-31 16:00:00.000 | 2021-12-31 16:01:00.000 | 7.333333333333333 |
|
d2 | 2022-01-01 00:00:00.000 | 2022-01-01 00:01:00.000 | 246.000000000000000 |
|
||||||
d28 | 2021-12-31 16:01:00.000 | 2021-12-31 16:02:00.000 | 8.000000000000000 |
|
d2 | 2022-01-01 00:01:00.000 | 2022-01-01 00:02:00.000 | 240.833333333333343 |
|
||||||
d28 | 2021-12-31 16:02:00.000 | 2021-12-31 16:03:00.000 | 11.000000000000000 |
|
d2 | 2022-01-01 00:02:00.000 | 2022-01-01 00:03:00.000 | 243.833333333333343 |
|
||||||
d28 | 2021-12-31 16:03:00.000 | 2021-12-31 16:04:00.000 | 6.666666666666667 |
|
d2 | 2022-01-01 00:03:00.000 | 2022-01-01 00:04:00.000 | 241.333333333333343 |
|
||||||
d28 | 2021-12-31 16:04:00.000 | 2021-12-31 16:05:00.000 | 10.000000000000000 |
|
d2 | 2022-01-01 00:04:00.000 | 2022-01-01 00:05:00.000 | 244.166666666666657 |
|
||||||
Query OK, 5 row(s) in set (0.016812s)
|
Query OK, 5 row(s) in set (0.016812s)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -343,52 +344,64 @@ SLIMIT 2;
|
||||||
|
|
||||||
```text
|
```text
|
||||||
tbname | _wstart | _wend | avg(voltage) |
|
tbname | _wstart | _wend | avg(voltage) |
|
||||||
=================================================================================================================
|
=======================================================================================
|
||||||
d40 | 2021-12-31 16:00:00.000 | 2021-12-31 16:01:00.000 | 5.666666666666667 |
|
d2 | 2022-01-01 00:00:00.000 | 2022-01-01 00:01:00.000 | 246.000000000000000 |
|
||||||
d40 | 2021-12-31 16:01:00.000 | 2021-12-31 16:02:00.000 | 5.000000000000000 |
|
d2 | 2022-01-01 00:01:00.000 | 2022-01-01 00:02:00.000 | 240.833333333333343 |
|
||||||
d40 | 2021-12-31 16:02:00.000 | 2021-12-31 16:03:00.000 | 9.666666666666666 |
|
d2 | 2022-01-01 00:02:00.000 | 2022-01-01 00:03:00.000 | 243.833333333333343 |
|
||||||
d40 | 2021-12-31 16:03:00.000 | 2021-12-31 16:04:00.000 | 10.333333333333334 |
|
d2 | 2022-01-01 00:03:00.000 | 2022-01-01 00:04:00.000 | 241.333333333333343 |
|
||||||
d40 | 2021-12-31 16:04:00.000 | 2021-12-31 16:05:00.000 | 13.000000000000000 |
|
d2 | 2022-01-01 00:04:00.000 | 2022-01-01 00:05:00.000 | 244.166666666666657 |
|
||||||
d41 | 2021-12-31 16:00:00.000 | 2021-12-31 16:01:00.000 | 5.666666666666667 |
|
d26 | 2022-01-01 00:00:00.000 | 2022-01-01 00:01:00.000 | 246.000000000000000 |
|
||||||
d41 | 2021-12-31 16:01:00.000 | 2021-12-31 16:02:00.000 | 9.333333333333334 |
|
d26 | 2022-01-01 00:01:00.000 | 2022-01-01 00:02:00.000 | 240.833333333333343 |
|
||||||
d41 | 2021-12-31 16:02:00.000 | 2021-12-31 16:03:00.000 | 11.000000000000000 |
|
d26 | 2022-01-01 00:02:00.000 | 2022-01-01 00:03:00.000 | 243.833333333333343 |
|
||||||
d41 | 2021-12-31 16:03:00.000 | 2021-12-31 16:04:00.000 | 7.666666666666667 |
|
d26 | 2022-01-01 00:03:00.000 | 2022-01-01 00:04:00.000 | 241.333333333333343 |
|
||||||
d41 | 2021-12-31 16:04:00.000 | 2021-12-31 16:05:00.000 | 10.000000000000000 |
|
d26 | 2022-01-01 00:04:00.000 | 2022-01-01 00:05:00.000 | 244.166666666666657 |
|
||||||
Query OK, 10 row(s) in set (0.022866s)
|
Query OK, 10 row(s) in set (0.022866s)
|
||||||
```
|
```
|
||||||
|
|
||||||
### 状态窗口
|
### 状态窗口
|
||||||
|
|
||||||
使用整数(布尔值)或字符串来标识产生记录时候设备的状态量。产生的记录如果具有相同的状态量数值则归属于同一个状态窗口,数值改变后该窗口关闭。TDengine 还支持将 CASE 表达式用在状态量,可以表达某个状态的开始是由满足某个条件而触发,这个状态的结束是由另外一个条件满足而触发的语义。以智能电表为例,电压正常范围是 205V 到 235V,那么可以通过监控电压来判断电路是否正常。
|
使用整数(布尔值)或字符串来标识产生记录时候设备的状态量。产生的记录如果具有相同的状态量数值则归属于同一个状态窗口,数值改变后该窗口关闭。TDengine 还支持将 CASE 表达式用在状态量,可以表达某个状态的开始是由满足某个条件而触发,这个状态的结束是由另外一个条件满足而触发的语义。以智能电表为例,电压正常范围是 225V 到 235V,那么可以通过监控电压来判断电路是否正常。
|
||||||
|
|
||||||
```sql
|
```sql
|
||||||
SELECT tbname, _wstart, _wend,_wduration, CASE WHEN voltage >= 205 and voltage <= 235 THEN 1 ELSE 0 END status
|
SELECT tbname, _wstart, _wend,_wduration, CASE WHEN voltage >= 225 and voltage <= 235 THEN 1 ELSE 0 END status
|
||||||
FROM meters
|
FROM meters
|
||||||
WHERE ts >= "2022-01-01T00:00:00+08:00"
|
WHERE ts >= "2022-01-01T00:00:00+08:00"
|
||||||
AND ts < "2022-01-01T00:05:00+08:00"
|
AND ts < "2022-01-01T00:05:00+08:00"
|
||||||
PARTITION BY tbname
|
PARTITION BY tbname
|
||||||
STATE_WINDOW(
|
STATE_WINDOW(
|
||||||
CASE WHEN voltage >= 205 and voltage <= 235 THEN 1 ELSE 0 END
|
CASE WHEN voltage >= 225 and voltage <= 235 THEN 1 ELSE 0 END
|
||||||
)
|
)
|
||||||
SLIMIT 10;
|
SLIMIT 2;
|
||||||
```
|
```
|
||||||
|
|
||||||
以上 SQL,查询超级表 meters 中,时间戳大于等于 2022-01-01T00:00:00+08:00,且时间戳小于 2022-01-01T00:05:00+08:00的数据;数据首先按照子表名 tbname 进行数据切分;根据电压是否在正常范围内进行状态窗口的划分;最后,取前 10 个分片的数据作为结果。查询结果如下:
|
以上 SQL,查询超级表 meters 中,时间戳大于等于 2022-01-01T00:00:00+08:00,且时间戳小于 2022-01-01T00:05:00+08:00的数据;数据首先按照子表名 tbname 进行数据切分;根据电压是否在正常范围内进行状态窗口的划分;最后,取前 2 个分片的数据作为结果。查询结果如下:(由于数据是随机生成,结果集包含的数据条数会有不同)
|
||||||
|
|
||||||
```text
|
```text
|
||||||
tbname | _wstart | _wend | _wduration | status |
|
tbname | _wstart | _wend | _wduration | status |
|
||||||
=====================================================================================================================================
|
===============================================================================================
|
||||||
d76 | 2021-12-31 16:00:00.000 | 2021-12-31 16:04:50.000 | 290000 | 0 |
|
d2 | 2022-01-01 00:00:00.000 | 2022-01-01 00:01:20.000 | 80000 | 0 |
|
||||||
d47 | 2021-12-31 16:00:00.000 | 2021-12-31 16:04:50.000 | 290000 | 0 |
|
d2 | 2022-01-01 00:01:30.000 | 2022-01-01 00:01:30.000 | 0 | 1 |
|
||||||
d37 | 2021-12-31 16:00:00.000 | 2021-12-31 16:04:50.000 | 290000 | 0 |
|
d2 | 2022-01-01 00:01:40.000 | 2022-01-01 00:01:40.000 | 0 | 0 |
|
||||||
d87 | 2021-12-31 16:00:00.000 | 2021-12-31 16:04:50.000 | 290000 | 0 |
|
d2 | 2022-01-01 00:01:50.000 | 2022-01-01 00:01:50.000 | 0 | 1 |
|
||||||
d64 | 2021-12-31 16:00:00.000 | 2021-12-31 16:04:50.000 | 290000 | 0 |
|
d2 | 2022-01-01 00:02:00.000 | 2022-01-01 00:02:20.000 | 20000 | 0 |
|
||||||
d35 | 2021-12-31 16:00:00.000 | 2021-12-31 16:04:50.000 | 290000 | 0 |
|
d2 | 2022-01-01 00:02:30.000 | 2022-01-01 00:02:30.000 | 0 | 1 |
|
||||||
d83 | 2021-12-31 16:00:00.000 | 2021-12-31 16:04:50.000 | 290000 | 0 |
|
d2 | 2022-01-01 00:02:40.000 | 2022-01-01 00:03:00.000 | 20000 | 0 |
|
||||||
d51 | 2021-12-31 16:00:00.000 | 2021-12-31 16:04:50.000 | 290000 | 0 |
|
d2 | 2022-01-01 00:03:10.000 | 2022-01-01 00:03:10.000 | 0 | 1 |
|
||||||
d63 | 2021-12-31 16:00:00.000 | 2021-12-31 16:04:50.000 | 290000 | 0 |
|
d2 | 2022-01-01 00:03:20.000 | 2022-01-01 00:03:40.000 | 20000 | 0 |
|
||||||
d0 | 2021-12-31 16:00:00.000 | 2021-12-31 16:04:50.000 | 290000 | 0 |
|
d2 | 2022-01-01 00:03:50.000 | 2022-01-01 00:03:50.000 | 0 | 1 |
|
||||||
Query OK, 10 row(s) in set (0.040495s)
|
d2 | 2022-01-01 00:04:00.000 | 2022-01-01 00:04:50.000 | 50000 | 0 |
|
||||||
|
d26 | 2022-01-01 00:00:00.000 | 2022-01-01 00:01:20.000 | 80000 | 0 |
|
||||||
|
d26 | 2022-01-01 00:01:30.000 | 2022-01-01 00:01:30.000 | 0 | 1 |
|
||||||
|
d26 | 2022-01-01 00:01:40.000 | 2022-01-01 00:01:40.000 | 0 | 0 |
|
||||||
|
d26 | 2022-01-01 00:01:50.000 | 2022-01-01 00:01:50.000 | 0 | 1 |
|
||||||
|
d26 | 2022-01-01 00:02:00.000 | 2022-01-01 00:02:20.000 | 20000 | 0 |
|
||||||
|
d26 | 2022-01-01 00:02:30.000 | 2022-01-01 00:02:30.000 | 0 | 1 |
|
||||||
|
d26 | 2022-01-01 00:02:40.000 | 2022-01-01 00:03:00.000 | 20000 | 0 |
|
||||||
|
d26 | 2022-01-01 00:03:10.000 | 2022-01-01 00:03:10.000 | 0 | 1 |
|
||||||
|
d26 | 2022-01-01 00:03:20.000 | 2022-01-01 00:03:40.000 | 20000 | 0 |
|
||||||
|
d26 | 2022-01-01 00:03:50.000 | 2022-01-01 00:03:50.000 | 0 | 1 |
|
||||||
|
d26 | 2022-01-01 00:04:00.000 | 2022-01-01 00:04:50.000 | 50000 | 0 |
|
||||||
|
Query OK, 22 row(s) in set (0.153403s)
|
||||||
```
|
```
|
||||||
|
|
||||||
### 会话窗口
|
### 会话窗口
|
||||||
|
@ -418,17 +431,17 @@ SLIMIT 10;
|
||||||
上面的 SQL,查询超级表 meters 中,时间戳大于等于 2022-01-01T00:00:00+08:00,且时间戳小于 2022-01-01T00:10:00+08:00的数据;数据先按照子表名 tbname 进行数据切分,再根据 10 分钟的会话窗口进行切分;最后,取前 10 个分片的数据作为结果,返回子表名、窗口开始时间、窗口结束时间、窗口宽度、窗口内数据条数。查询结果如下:
|
上面的 SQL,查询超级表 meters 中,时间戳大于等于 2022-01-01T00:00:00+08:00,且时间戳小于 2022-01-01T00:10:00+08:00的数据;数据先按照子表名 tbname 进行数据切分,再根据 10 分钟的会话窗口进行切分;最后,取前 10 个分片的数据作为结果,返回子表名、窗口开始时间、窗口结束时间、窗口宽度、窗口内数据条数。查询结果如下:
|
||||||
```text
|
```text
|
||||||
tbname | _wstart | _wend | _wduration | count(*) |
|
tbname | _wstart | _wend | _wduration | count(*) |
|
||||||
=====================================================================================================================================
|
===============================================================================================
|
||||||
d76 | 2021-12-31 16:00:00.000 | 2021-12-31 16:09:50.000 | 590000 | 60 |
|
d2 | 2022-01-01 00:00:00.000 | 2022-01-01 00:09:50.000 | 590000 | 60 |
|
||||||
d47 | 2021-12-31 16:00:00.000 | 2021-12-31 16:09:50.000 | 590000 | 60 |
|
d26 | 2022-01-01 00:00:00.000 | 2022-01-01 00:09:50.000 | 590000 | 60 |
|
||||||
d37 | 2021-12-31 16:00:00.000 | 2021-12-31 16:09:50.000 | 590000 | 60 |
|
d52 | 2022-01-01 00:00:00.000 | 2022-01-01 00:09:50.000 | 590000 | 60 |
|
||||||
d87 | 2021-12-31 16:00:00.000 | 2021-12-31 16:09:50.000 | 590000 | 60 |
|
d64 | 2022-01-01 00:00:00.000 | 2022-01-01 00:09:50.000 | 590000 | 60 |
|
||||||
d64 | 2021-12-31 16:00:00.000 | 2021-12-31 16:09:50.000 | 590000 | 60 |
|
d76 | 2022-01-01 00:00:00.000 | 2022-01-01 00:09:50.000 | 590000 | 60 |
|
||||||
d35 | 2021-12-31 16:00:00.000 | 2021-12-31 16:09:50.000 | 590000 | 60 |
|
d28 | 2022-01-01 00:00:00.000 | 2022-01-01 00:09:50.000 | 590000 | 60 |
|
||||||
d83 | 2021-12-31 16:00:00.000 | 2021-12-31 16:09:50.000 | 590000 | 60 |
|
d4 | 2022-01-01 00:00:00.000 | 2022-01-01 00:09:50.000 | 590000 | 60 |
|
||||||
d51 | 2021-12-31 16:00:00.000 | 2021-12-31 16:09:50.000 | 590000 | 60 |
|
d88 | 2022-01-01 00:00:00.000 | 2022-01-01 00:09:50.000 | 590000 | 60 |
|
||||||
d63 | 2021-12-31 16:00:00.000 | 2021-12-31 16:09:50.000 | 590000 | 60 |
|
d77 | 2022-01-01 00:00:00.000 | 2022-01-01 00:09:50.000 | 590000 | 60 |
|
||||||
d0 | 2021-12-31 16:00:00.000 | 2021-12-31 16:09:50.000 | 590000 | 60 |
|
d54 | 2022-01-01 00:00:00.000 | 2022-01-01 00:09:50.000 | 590000 | 60 |
|
||||||
Query OK, 10 row(s) in set (0.043489s)
|
Query OK, 10 row(s) in set (0.043489s)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -458,26 +471,26 @@ FROM meters
|
||||||
WHERE ts >= "2022-01-01T00:00:00+08:00"
|
WHERE ts >= "2022-01-01T00:00:00+08:00"
|
||||||
AND ts < "2022-01-01T00:10:00+08:00"
|
AND ts < "2022-01-01T00:10:00+08:00"
|
||||||
PARTITION BY tbname
|
PARTITION BY tbname
|
||||||
EVENT_WINDOW START WITH voltage >= 10 END WITH voltage < 20
|
EVENT_WINDOW START WITH voltage >= 225 END WITH voltage < 235
|
||||||
LIMIT 10;
|
LIMIT 5;
|
||||||
```
|
```
|
||||||
|
|
||||||
上面的 SQL,查询超级表meters中,时间戳大于等于2022-01-01T00:00:00+08:00,且时间戳小于2022-01-01T00:10:00+08:00的数据;数据先按照子表名tbname进行数据切分,再根据事件窗口条件:电压大于等于 10V,且小于 20V 进行切分;最后,取前 10 行的数据作为结果,返回子表名、窗口开始时间、窗口结束时间、窗口宽度、窗口内数据条数。查询结果如下:
|
上面的 SQL,查询超级表meters中,时间戳大于等于2022-01-01T00:00:00+08:00,且时间戳小于2022-01-01T00:10:00+08:00的数据;数据先按照子表名tbname进行数据切分,再根据事件窗口条件:电压大于等于 225V,且小于 235V 进行切分;最后,取每个分片的前 5 行的数据作为结果,返回子表名、窗口开始时间、窗口结束时间、窗口宽度、窗口内数据条数。查询结果如下:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
tbname | _wstart | _wend | _wduration | count(*) |
|
tbname | _wstart | _wend | _wduration | count(*) |
|
||||||
=====================================================================================================================================
|
==============================================================================================
|
||||||
d0 | 2021-12-31 16:00:00.000 | 2021-12-31 16:00:00.000 | 0 | 1 |
|
d0 | 2022-01-01 00:00:00.000 | 2022-01-01 00:01:30.000 | 90000 | 10 |
|
||||||
d0 | 2021-12-31 16:00:30.000 | 2021-12-31 16:00:30.000 | 0 | 1 |
|
d0 | 2022-01-01 00:01:40.000 | 2022-01-01 00:02:30.000 | 50000 | 6 |
|
||||||
d0 | 2021-12-31 16:00:40.000 | 2021-12-31 16:00:40.000 | 0 | 1 |
|
d0 | 2022-01-01 00:02:40.000 | 2022-01-01 00:03:10.000 | 30000 | 4 |
|
||||||
d0 | 2021-12-31 16:01:20.000 | 2021-12-31 16:01:20.000 | 0 | 1 |
|
d0 | 2022-01-01 00:03:20.000 | 2022-01-01 00:07:10.000 | 230000 | 24 |
|
||||||
d0 | 2021-12-31 16:02:20.000 | 2021-12-31 16:02:20.000 | 0 | 1 |
|
d0 | 2022-01-01 00:07:20.000 | 2022-01-01 00:07:50.000 | 30000 | 4 |
|
||||||
d0 | 2021-12-31 16:02:30.000 | 2021-12-31 16:02:30.000 | 0 | 1 |
|
d1 | 2022-01-01 00:00:00.000 | 2022-01-01 00:01:30.000 | 90000 | 10 |
|
||||||
d0 | 2021-12-31 16:03:10.000 | 2021-12-31 16:03:10.000 | 0 | 1 |
|
d1 | 2022-01-01 00:01:40.000 | 2022-01-01 00:02:30.000 | 50000 | 6 |
|
||||||
d0 | 2021-12-31 16:03:30.000 | 2021-12-31 16:03:30.000 | 0 | 1 |
|
d1 | 2022-01-01 00:02:40.000 | 2022-01-01 00:03:10.000 | 30000 | 4 |
|
||||||
d0 | 2021-12-31 16:03:40.000 | 2021-12-31 16:03:40.000 | 0 | 1 |
|
d1 | 2022-01-01 00:03:20.000 | 2022-01-01 00:07:10.000 | 230000 | 24 |
|
||||||
d0 | 2021-12-31 16:03:50.000 | 2021-12-31 16:03:50.000 | 0 | 1 |
|
……
|
||||||
Query OK, 10 row(s) in set (0.034127s)
|
Query OK, 500 row(s) in set (0.328557s)
|
||||||
```
|
```
|
||||||
|
|
||||||
### 计数窗口
|
### 计数窗口
|
||||||
|
@ -492,17 +505,25 @@ sliding_val 是一个常量,表示窗口滑动的数量,类似于 interval
|
||||||
select _wstart, _wend, count(*)
|
select _wstart, _wend, count(*)
|
||||||
from meters
|
from meters
|
||||||
where ts >= "2022-01-01T00:00:00+08:00" and ts < "2022-01-01T00:30:00+08:00"
|
where ts >= "2022-01-01T00:00:00+08:00" and ts < "2022-01-01T00:30:00+08:00"
|
||||||
count_window(10);
|
count_window(1000);
|
||||||
```
|
```
|
||||||
|
|
||||||
上面的 SQL 查询超级表 meters 中时间戳大于等于 2022-01-01T00:00:00+08:00 且时间戳小于 2022-01-01T00:10:00+08:00 的数据。以每 10 条数据为一组,返回每组的开始时间、结束时间和分组条数。查询结果如下。
|
上面的 SQL 查询超级表 meters 中时间戳大于等于 2022-01-01T00:00:00+08:00 且时间戳小于 2022-01-01T00:10:00+08:00 的数据。以每 1000 条数据为一组,返回每组的开始时间、结束时间和分组条数。查询结果如下:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
_wstart | _wend | count(*) |
|
_wstart | _wend | count(*) |
|
||||||
===========================================================
|
=====================================================================
|
||||||
2021-12-31 16:00:00.000 | 2021-12-31 16:10:00.000 | 10 |
|
2022-01-01 00:00:00.000 | 2022-01-01 00:01:30.000 | 1000 |
|
||||||
2021-12-31 16:10:00.000 | 2021-12-31 16:20:00.000 | 10 |
|
2022-01-01 00:01:40.000 | 2022-01-01 00:03:10.000 | 1000 |
|
||||||
2021-12-31 16:20:00.000 | 2021-12-31 16:30:00.000 | 10 |
|
2022-01-01 00:03:20.000 | 2022-01-01 00:04:50.000 | 1000 |
|
||||||
|
2022-01-01 00:05:00.000 | 2022-01-01 00:06:30.000 | 1000 |
|
||||||
|
2022-01-01 00:06:40.000 | 2022-01-01 00:08:10.000 | 1000 |
|
||||||
|
2022-01-01 00:08:20.000 | 2022-01-01 00:09:50.000 | 1000 |
|
||||||
|
2022-01-01 00:10:00.000 | 2022-01-01 00:11:30.000 | 1000 |
|
||||||
|
2022-01-01 00:11:40.000 | 2022-01-01 00:13:10.000 | 1000 |
|
||||||
|
2022-01-01 00:13:20.000 | 2022-01-01 00:14:50.000 | 1000 |
|
||||||
|
2022-01-01 00:15:00.000 | 2022-01-01 00:16:30.000 | 1000 |
|
||||||
|
Query OK, 10 row(s) in set (0.062794s)
|
||||||
```
|
```
|
||||||
|
|
||||||
## 时序数据特有函数
|
## 时序数据特有函数
|
||||||
|
@ -564,13 +585,13 @@ UNION ALL
|
||||||
|
|
||||||
```text
|
```text
|
||||||
tbname | ts | current | voltage | phase |
|
tbname | ts | current | voltage | phase |
|
||||||
=================================================================================================
|
====================================================================================
|
||||||
d11 | 2020-09-13 12:26:40.000 | 1.0260611 | 6 | 0.3620200 |
|
d11 | 2020-09-13 20:26:40.000 | 11.5680809 | 247 | 146.5000000 |
|
||||||
d11 | 2020-09-13 12:26:50.000 | 2.9544230 | 8 | 1.0048079 |
|
d11 | 2020-09-13 20:26:50.000 | 14.2392311 | 234 | 148.0000000 |
|
||||||
d21 | 2020-09-13 12:26:40.000 | 1.0260611 | 2 | 0.3520200 |
|
d1 | 2020-09-13 20:26:40.000 | 11.5680809 | 247 | 146.5000000 |
|
||||||
d21 | 2020-09-13 12:26:50.000 | 2.9544230 | 2 | 0.9948080 |
|
d21 | 2020-09-13 20:26:40.000 | 11.5680809 | 247 | 146.5000000 |
|
||||||
d21 | 2020-09-13 12:27:00.000 | -0.0000430 | 12 | 0.0099860 |
|
d21 | 2020-09-13 20:26:50.000 | 14.2392311 | 234 | 148.0000000 |
|
||||||
d1 | 2020-09-13 12:26:40.000 | 1.0260611 | 10 | 0.3520200 |
|
d21 | 2020-09-13 20:27:00.000 | 10.0999422 | 251 | 146.0000000 |
|
||||||
Query OK, 6 row(s) in set (0.006438s)
|
Query OK, 6 row(s) in set (0.006438s)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue