Merge pull request #17081 from taosdata/docs/function-cn

Update 10-function.md cn version
This commit is contained in:
wade zhang 2022-09-27 14:11:03 +08:00 committed by GitHub
commit e56050eb1f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 83 additions and 72 deletions

View File

@ -14,7 +14,7 @@ toc_max_heading_level: 4
#### ABS #### ABS
```sql ```sql
SELECT ABS(field_name) FROM { tb_name | stb_name } [WHERE clause] ABS(expr)
``` ```
**功能说明**:获得指定字段的绝对值。 **功能说明**:获得指定字段的绝对值。
@ -32,7 +32,7 @@ SELECT ABS(field_name) FROM { tb_name | stb_name } [WHERE clause]
#### ACOS #### ACOS
```sql ```sql
SELECT ACOS(field_name) FROM { tb_name | stb_name } [WHERE clause] ACOS(expr)
``` ```
**功能说明**:获得指定字段的反余弦结果。 **功能说明**:获得指定字段的反余弦结果。
@ -50,7 +50,7 @@ SELECT ACOS(field_name) FROM { tb_name | stb_name } [WHERE clause]
#### ASIN #### ASIN
```sql ```sql
SELECT ASIN(field_name) FROM { tb_name | stb_name } [WHERE clause] ASIN(expr)
``` ```
**功能说明**:获得指定字段的反正弦结果。 **功能说明**:获得指定字段的反正弦结果。
@ -69,7 +69,7 @@ SELECT ASIN(field_name) FROM { tb_name | stb_name } [WHERE clause]
#### ATAN #### ATAN
```sql ```sql
SELECT ATAN(field_name) FROM { tb_name | stb_name } [WHERE clause] ATAN(expr)
``` ```
**功能说明**:获得指定字段的反正切结果。 **功能说明**:获得指定字段的反正切结果。
@ -88,7 +88,7 @@ SELECT ATAN(field_name) FROM { tb_name | stb_name } [WHERE clause]
#### CEIL #### CEIL
```sql ```sql
SELECT CEIL(field_name) FROM { tb_name | stb_name } [WHERE clause]; CEIL(expr)
``` ```
**功能说明**:获得指定字段的向上取整数的结果。 **功能说明**:获得指定字段的向上取整数的结果。
@ -106,7 +106,7 @@ SELECT CEIL(field_name) FROM { tb_name | stb_name } [WHERE clause];
#### COS #### COS
```sql ```sql
SELECT COS(field_name) FROM { tb_name | stb_name } [WHERE clause] COS(expr)
``` ```
**功能说明**:获得指定字段的余弦结果。 **功能说明**:获得指定字段的余弦结果。
@ -124,7 +124,7 @@ SELECT COS(field_name) FROM { tb_name | stb_name } [WHERE clause]
#### FLOOR #### FLOOR
```sql ```sql
SELECT FLOOR(field_name) FROM { tb_name | stb_name } [WHERE clause]; FLOOR(expr)
``` ```
**功能说明**:获得指定字段的向下取整数的结果。 **功能说明**:获得指定字段的向下取整数的结果。
@ -133,10 +133,10 @@ SELECT FLOOR(field_name) FROM { tb_name | stb_name } [WHERE clause];
#### LOG #### LOG
```sql ```sql
SELECT LOG(field_name[, base]) FROM { tb_name | stb_name } [WHERE clause] LOG(expr1[, expr2])
``` ```
**功能说明**:获得指定字段对于底数 base 的对数。如果 base 参数省略,则返回指定字段的自然对数值。 **功能说明**:获得 expr1 对于底数 expr2 的对数。如果 expr2 参数省略,则返回指定字段的自然对数值。
**返回结果类型**DOUBLE。 **返回结果类型**DOUBLE。
@ -152,10 +152,10 @@ SELECT LOG(field_name[, base]) FROM { tb_name | stb_name } [WHERE clause]
#### POW #### POW
```sql ```sql
SELECT POW(field_name, power) FROM { tb_name | stb_name } [WHERE clause] POW(expr1, expr2)
``` ```
**功能说明**:获得指定字段的指数为 power 的幂。 **功能说明**:获得 expr1 的指数为 expr2 的幂。
**返回结果类型**DOUBLE。 **返回结果类型**DOUBLE。
@ -171,7 +171,7 @@ SELECT POW(field_name, power) FROM { tb_name | stb_name } [WHERE clause]
#### ROUND #### ROUND
```sql ```sql
SELECT ROUND(field_name) FROM { tb_name | stb_name } [WHERE clause]; ROUND(expr)
``` ```
**功能说明**:获得指定字段的四舍五入的结果。 **功能说明**:获得指定字段的四舍五入的结果。
@ -181,7 +181,7 @@ SELECT ROUND(field_name) FROM { tb_name | stb_name } [WHERE clause];
#### SIN #### SIN
```sql ```sql
SELECT SIN(field_name) FROM { tb_name | stb_name } [WHERE clause] SIN(expr)
``` ```
**功能说明**:获得指定字段的正弦结果。 **功能说明**:获得指定字段的正弦结果。
@ -199,7 +199,7 @@ SELECT SIN(field_name) FROM { tb_name | stb_name } [WHERE clause]
#### SQRT #### SQRT
```sql ```sql
SELECT SQRT(field_name) FROM { tb_name | stb_name } [WHERE clause] SQRT(expr)
``` ```
**功能说明**:获得指定字段的平方根。 **功能说明**:获得指定字段的平方根。
@ -217,7 +217,7 @@ SELECT SQRT(field_name) FROM { tb_name | stb_name } [WHERE clause]
#### TAN #### TAN
```sql ```sql
SELECT TAN(field_name) FROM { tb_name | stb_name } [WHERE clause] TAN(expr)
``` ```
**功能说明**:获得指定字段的正切结果。 **功能说明**:获得指定字段的正切结果。
@ -239,7 +239,7 @@ SELECT TAN(field_name) FROM { tb_name | stb_name } [WHERE clause]
#### CHAR_LENGTH #### CHAR_LENGTH
```sql ```sql
SELECT CHAR_LENGTH(str|column) FROM { tb_name | stb_name } [WHERE clause] CHAR_LENGTH(expr)
``` ```
**功能说明**:以字符计数的字符串长度。 **功能说明**:以字符计数的字符串长度。
@ -255,7 +255,7 @@ SELECT CHAR_LENGTH(str|column) FROM { tb_name | stb_name } [WHERE clause]
#### CONCAT #### CONCAT
```sql ```sql
SELECT CONCAT(str1|column1, str2|column2, ...) FROM { tb_name | stb_name } [WHERE clause] CONCAT(expr1, expr2 [, expr] ... )
``` ```
**功能说明**:字符串连接函数。 **功能说明**:字符串连接函数。
@ -272,7 +272,7 @@ SELECT CONCAT(str1|column1, str2|column2, ...) FROM { tb_name | stb_name } [WHER
#### CONCAT_WS #### CONCAT_WS
```sql ```sql
SELECT CONCAT_WS(separator, str1|column1, str2|column2, ...) FROM { tb_name | stb_name } [WHERE clause] CONCAT_WS(separator_expr, expr1, expr2 [, expr] ...)
``` ```
**功能说明**:带分隔符的字符串连接函数。 **功能说明**:带分隔符的字符串连接函数。
@ -289,7 +289,7 @@ SELECT CONCAT_WS(separator, str1|column1, str2|column2, ...) FROM { tb_name | st
#### LENGTH #### LENGTH
```sql ```sql
SELECT LENGTH(str|column) FROM { tb_name | stb_name } [WHERE clause] LENGTH(expr)
``` ```
**功能说明**:以字节计数的字符串长度。 **功能说明**:以字节计数的字符串长度。
@ -306,7 +306,7 @@ SELECT LENGTH(str|column) FROM { tb_name | stb_name } [WHERE clause]
#### LOWER #### LOWER
```sql ```sql
SELECT LOWER(str|column) FROM { tb_name | stb_name } [WHERE clause] LOWER(expr)
``` ```
**功能说明**:将字符串参数值转换为全小写字母。 **功能说明**:将字符串参数值转换为全小写字母。
@ -323,7 +323,7 @@ SELECT LOWER(str|column) FROM { tb_name | stb_name } [WHERE clause]
#### LTRIM #### LTRIM
```sql ```sql
SELECT LTRIM(str|column) FROM { tb_name | stb_name } [WHERE clause] LTRIM(expr)
``` ```
**功能说明**:返回清除左边空格后的字符串。 **功能说明**:返回清除左边空格后的字符串。
@ -340,7 +340,7 @@ SELECT LTRIM(str|column) FROM { tb_name | stb_name } [WHERE clause]
#### RTRIM #### RTRIM
```sql ```sql
SELECT LTRIM(str|column) FROM { tb_name | stb_name } [WHERE clause] LTRIM(expr)
``` ```
**功能说明**:返回清除右边空格后的字符串。 **功能说明**:返回清除右边空格后的字符串。
@ -357,7 +357,7 @@ SELECT LTRIM(str|column) FROM { tb_name | stb_name } [WHERE clause]
#### SUBSTR #### SUBSTR
```sql ```sql
SELECT SUBSTR(str,pos[,len]) FROM { tb_name | stb_name } [WHERE clause] SUBSTR(expr, pos [,len])
``` ```
**功能说明**:从源字符串 str 中的指定位置 pos 开始取一个长度为 len 的子串并返回。如果输入参数 len 被忽略,返回的子串包含从 pos 开始的整个字串。 **功能说明**:从源字符串 str 中的指定位置 pos 开始取一个长度为 len 的子串并返回。如果输入参数 len 被忽略,返回的子串包含从 pos 开始的整个字串。
@ -374,7 +374,7 @@ SELECT SUBSTR(str,pos[,len]) FROM { tb_name | stb_name } [WHERE clause]
#### UPPER #### UPPER
```sql ```sql
SELECT UPPER(str|column) FROM { tb_name | stb_name } [WHERE clause] UPPER(expr)
``` ```
**功能说明**:将字符串参数值转换为全大写字母。 **功能说明**:将字符串参数值转换为全大写字母。
@ -395,10 +395,10 @@ SELECT UPPER(str|column) FROM { tb_name | stb_name } [WHERE clause]
#### CAST #### CAST
```sql ```sql
SELECT CAST(expression AS type_name) FROM { tb_name | stb_name } [WHERE clause] CAST(expr AS type_name)
``` ```
**功能说明**:数据类型转换函数,返回 expression 转换为 type_name 指定的类型后的结果。只适用于 select 子句中。 **功能说明**:数据类型转换函数,返回 expr 转换为 type_name 指定的类型后的结果。只适用于 select 子句中。
**返回结果类型**CAST 中指定的类型type_name)。 **返回结果类型**CAST 中指定的类型type_name)。
@ -419,7 +419,7 @@ SELECT CAST(expression AS type_name) FROM { tb_name | stb_name } [WHERE clause]
#### TO_ISO8601 #### TO_ISO8601
```sql ```sql
SELECT TO_ISO8601(ts[, timezone]) FROM { tb_name | stb_name } [WHERE clause]; TO_ISO8601(expr [, timezone])
``` ```
**功能说明**:将 UNIX 时间戳转换成为 ISO8601 标准的日期时间格式并附加时区信息。timezone 参数允许用户为输出结果指定附带任意时区信息。如果 timezone 参数省略,输出结果则附带当前客户端的系统时区信息。 **功能说明**:将 UNIX 时间戳转换成为 ISO8601 标准的日期时间格式并附加时区信息。timezone 参数允许用户为输出结果指定附带任意时区信息。如果 timezone 参数省略,输出结果则附带当前客户端的系统时区信息。
@ -442,7 +442,7 @@ SELECT TO_ISO8601(ts[, timezone]) FROM { tb_name | stb_name } [WHERE clause];
#### TO_JSON #### TO_JSON
```sql ```sql
SELECT TO_JSON(str_literal) FROM { tb_name | stb_name } [WHERE clause]; TO_JSON(str_literal)
``` ```
**功能说明**: 将字符串常量转换为 JSON 类型。 **功能说明**: 将字符串常量转换为 JSON 类型。
@ -459,7 +459,7 @@ SELECT TO_JSON(str_literal) FROM { tb_name | stb_name } [WHERE clause];
#### TO_UNIXTIMESTAMP #### TO_UNIXTIMESTAMP
```sql ```sql
SELECT TO_UNIXTIMESTAMP(datetime_string) FROM { tb_name | stb_name } [WHERE clause]; TO_UNIXTIMESTAMP(expr)
``` ```
**功能说明**:将日期时间格式的字符串转换成为 UNIX 时间戳。 **功能说明**:将日期时间格式的字符串转换成为 UNIX 时间戳。
@ -487,9 +487,7 @@ SELECT TO_UNIXTIMESTAMP(datetime_string) FROM { tb_name | stb_name } [WHERE clau
#### NOW #### NOW
```sql ```sql
SELECT NOW() FROM { tb_name | stb_name } [WHERE clause]; NOW()
SELECT select_expr FROM { tb_name | stb_name } WHERE ts_col cond_operatior NOW();
INSERT INTO tb_name VALUES (NOW(), ...);
``` ```
**功能说明**:返回客户端当前系统时间。 **功能说明**:返回客户端当前系统时间。
@ -512,7 +510,7 @@ INSERT INTO tb_name VALUES (NOW(), ...);
#### TIMEDIFF #### TIMEDIFF
```sql ```sql
SELECT TIMEDIFF(ts | datetime_string1, ts | datetime_string2 [, time_unit]) FROM { tb_name | stb_name } [WHERE clause]; TIMEDIFF(expr1, expr2 [, time_unit])
``` ```
**功能说明**:计算两个时间戳之间的差值,并近似到时间单位 time_unit 指定的精度。 **功能说明**:计算两个时间戳之间的差值,并近似到时间单位 time_unit 指定的精度。
@ -535,7 +533,7 @@ SELECT TIMEDIFF(ts | datetime_string1, ts | datetime_string2 [, time_unit]) FROM
#### TIMETRUNCATE #### TIMETRUNCATE
```sql ```sql
SELECT TIMETRUNCATE(ts | datetime_string , time_unit) FROM { tb_name | stb_name } [WHERE clause]; TIMETRUNCATE(expr, time_unit)
``` ```
**功能说明**:将时间戳按照指定时间单位 time_unit 进行截断。 **功能说明**:将时间戳按照指定时间单位 time_unit 进行截断。
@ -556,7 +554,7 @@ SELECT TIMETRUNCATE(ts | datetime_string , time_unit) FROM { tb_name | stb_name
#### TIMEZONE #### TIMEZONE
```sql ```sql
SELECT TIMEZONE() FROM { tb_name | stb_name } [WHERE clause]; TIMEZONE()
``` ```
**功能说明**:返回客户端当前时区信息。 **功能说明**:返回客户端当前时区信息。
@ -571,9 +569,7 @@ SELECT TIMEZONE() FROM { tb_name | stb_name } [WHERE clause];
#### TODAY #### TODAY
```sql ```sql
SELECT TODAY() FROM { tb_name | stb_name } [WHERE clause]; TODAY()
SELECT select_expr FROM { tb_name | stb_name } WHERE ts_col cond_operatior TODAY()];
INSERT INTO tb_name VALUES (TODAY(), ...);
``` ```
**功能说明**:返回客户端当日零时的系统时间。 **功能说明**:返回客户端当日零时的系统时间。
@ -600,7 +596,12 @@ TDengine 支持针对数据的聚合查询。提供如下聚合函数。
### APERCENTILE ### APERCENTILE
```sql ```sql
SELECT APERCENTILE(field_name, P[, algo_type]) FROM { tb_name | stb_name } [WHERE clause] APERCENTILE(expr, p [, algo_type])
algo_type: {
"default"
| "t-digest"
}
``` ```
**功能说明**:统计表/超级表中指定列的值的近似百分比分位数,与 PERCENTILE 函数相似,但是返回近似结果。 **功能说明**:统计表/超级表中指定列的值的近似百分比分位数,与 PERCENTILE 函数相似,但是返回近似结果。
@ -612,14 +613,14 @@ SELECT APERCENTILE(field_name, P[, algo_type]) FROM { tb_name | stb_name } [WHER
**适用于**:表和超级表。 **适用于**:表和超级表。
**说明** **说明**
- P值范围是[0,100]当为0时等同于MIN为100时等同于MAX。 - p值范围是[0,100]当为0时等同于MIN为100时等同于MAX。
- algo_type 取值为 "default" 或 "t-digest"。 输入为 "default" 时函数使用基于直方图算法进行计算。输入为 "t-digest" 时使用t-digest算法计算分位数的近似结果。如果不指定 algo_type 则使用 "default" 算法。 - algo_type 取值为 "default" 或 "t-digest"。 输入为 "default" 时函数使用基于直方图算法进行计算。输入为 "t-digest" 时使用t-digest算法计算分位数的近似结果。如果不指定 algo_type 则使用 "default" 算法。
- "t-digest"算法的近似结果对于输入数据顺序敏感,对超级表查询时不同的输入排序结果可能会有微小的误差。 - "t-digest"算法的近似结果对于输入数据顺序敏感,对超级表查询时不同的输入排序结果可能会有微小的误差。
### AVG ### AVG
```sql ```sql
SELECT AVG(field_name) FROM tb_name [WHERE clause]; AVG(expr)
``` ```
**功能说明**:统计指定字段的平均值。 **功能说明**:统计指定字段的平均值。
@ -634,7 +635,7 @@ SELECT AVG(field_name) FROM tb_name [WHERE clause];
### COUNT ### COUNT
```sql ```sql
SELECT COUNT([*|field_name]) FROM tb_name [WHERE clause]; COUNT({* | expr})
``` ```
**功能说明**:统计指定字段的记录行数。 **功能说明**:统计指定字段的记录行数。
@ -654,7 +655,7 @@ SELECT COUNT([*|field_name]) FROM tb_name [WHERE clause];
### ELAPSED ### ELAPSED
```sql ```sql
SELECT ELAPSED(ts_primary_key [, time_unit]) FROM { tb_name | stb_name } [WHERE clause] [INTERVAL(interval [, offset]) [SLIDING sliding]]; ELAPSED(ts_primary_key [, time_unit])
``` ```
**功能说明**elapsed函数表达了统计周期内连续的时间长度和twa函数配合使用可以计算统计曲线下的面积。在通过INTERVAL子句指定窗口的情况下统计在给定时间范围内的每个窗口内有数据覆盖的时间范围如果没有INTERVAL子句则返回整个给定时间范围内的有数据覆盖的时间范围。注意ELAPSED返回的并不是时间范围的绝对值而是绝对值除以time_unit所得到的单位个数。 **功能说明**elapsed函数表达了统计周期内连续的时间长度和twa函数配合使用可以计算统计曲线下的面积。在通过INTERVAL子句指定窗口的情况下统计在给定时间范围内的每个窗口内有数据覆盖的时间范围如果没有INTERVAL子句则返回整个给定时间范围内的有数据覆盖的时间范围。注意ELAPSED返回的并不是时间范围的绝对值而是绝对值除以time_unit所得到的单位个数。
@ -666,7 +667,7 @@ SELECT ELAPSED(ts_primary_key [, time_unit]) FROM { tb_name | stb_name } [WHERE
**适用于**: 表,超级表,嵌套查询的外层查询 **适用于**: 表,超级表,嵌套查询的外层查询
**说明** **说明**
- field_name参数只能是表的第一列,即 TIMESTAMP 类型的主键列。 - ts_primary_key参数只能是表的第一列,即 TIMESTAMP 类型的主键列。
- 按time_unit参数指定的时间单位返回最小是数据库的时间分辨率。time_unit 参数未指定时,以数据库的时间分辨率为时间单位。支持的时间单位 time_unit 如下: - 按time_unit参数指定的时间单位返回最小是数据库的时间分辨率。time_unit 参数未指定时,以数据库的时间分辨率为时间单位。支持的时间单位 time_unit 如下:
1b(纳秒), 1u(微秒)1a(毫秒)1s(秒)1m(分)1h(小时)1d(天), 1w(周)。 1b(纳秒), 1u(微秒)1a(毫秒)1s(秒)1m(分)1h(小时)1d(天), 1w(周)。
- 可以和interval组合使用返回每个时间窗口的时间戳差值。需要特别注意的是除第一个时间窗口和最后一个时间窗口外中间窗口的时间戳差值均为窗口长度。 - 可以和interval组合使用返回每个时间窗口的时间戳差值。需要特别注意的是除第一个时间窗口和最后一个时间窗口外中间窗口的时间戳差值均为窗口长度。
@ -680,14 +681,14 @@ SELECT ELAPSED(ts_primary_key [, time_unit]) FROM { tb_name | stb_name } [WHERE
### LEASTSQUARES ### LEASTSQUARES
```sql ```sql
SELECT LEASTSQUARES(field_name, start_val, step_val) FROM tb_name [WHERE clause]; LEASTSQUARES(expr, start_val, step_val)
``` ```
**功能说明**统计表中某列的值是主键时间戳的拟合直线方程。start_val 是自变量初始值step_val 是自变量的步长值。 **功能说明**统计表中某列的值是主键时间戳的拟合直线方程。start_val 是自变量初始值step_val 是自变量的步长值。
**返回数据类型**:字符串表达式(斜率, 截距)。 **返回数据类型**:字符串表达式(斜率, 截距)。
**适用数据类型**field_name 必须是数值类型。 **适用数据类型**expr 必须是数值类型。
**适用于**:表。 **适用于**:表。
@ -695,7 +696,7 @@ SELECT LEASTSQUARES(field_name, start_val, step_val) FROM tb_name [WHERE clause]
### SPREAD ### SPREAD
```sql ```sql
SELECT SPREAD(field_name) FROM { tb_name | stb_name } [WHERE clause]; SPREAD(expr)
``` ```
**功能说明**:统计表中某列的最大值和最小值之差。 **功能说明**:统计表中某列的最大值和最小值之差。
@ -710,7 +711,7 @@ SELECT SPREAD(field_name) FROM { tb_name | stb_name } [WHERE clause];
### STDDEV ### STDDEV
```sql ```sql
SELECT STDDEV(field_name) FROM tb_name [WHERE clause]; STDDEV(expr)
``` ```
**功能说明**:统计表中某列的均方差。 **功能说明**:统计表中某列的均方差。
@ -725,7 +726,7 @@ SELECT STDDEV(field_name) FROM tb_name [WHERE clause];
### SUM ### SUM
```sql ```sql
SELECT SUM(field_name) FROM tb_name [WHERE clause]; SUM(expr)
``` ```
**功能说明**:统计表/超级表中某列的和。 **功能说明**:统计表/超级表中某列的和。
@ -740,7 +741,7 @@ SELECT SUM(field_name) FROM tb_name [WHERE clause];
### HYPERLOGLOG ### HYPERLOGLOG
```sql ```sql
SELECT HYPERLOGLOG(field_name) FROM { tb_name | stb_name } [WHERE clause]; HYPERLOGLOG(expr)
``` ```
**功能说明** **功能说明**
@ -757,7 +758,7 @@ SELECT HYPERLOGLOG(field_name) FROM { tb_name | stb_name } [WHERE clause];
### HISTOGRAM ### HISTOGRAM
```sql ```sql
SELECT HISTOGRAM(field_namebin_type, bin_description, normalized) FROM tb_name [WHERE clause]; HISTOGRAM(exprbin_type, bin_description, normalized)
``` ```
**功能说明**:统计数据按照用户指定区间的分布。 **功能说明**:统计数据按照用户指定区间的分布。
@ -787,7 +788,7 @@ SELECT HISTOGRAM(field_namebin_type, bin_description, normalized) FROM tb_nam
### PERCENTILE ### PERCENTILE
```sql ```sql
SELECT PERCENTILE(field_name, P) FROM { tb_name } [WHERE clause]; PERCENTILE(expr, p)
``` ```
**功能说明**:统计表中某列的值百分比分位数。 **功能说明**:统计表中某列的值百分比分位数。
@ -808,7 +809,7 @@ SELECT PERCENTILE(field_name, P) FROM { tb_name } [WHERE clause];
### BOTTOM ### BOTTOM
```sql ```sql
SELECT BOTTOM(field_name, K) FROM { tb_name | stb_name } [WHERE clause]; BOTTOM(expr, k)
``` ```
**功能说明**:统计表/超级表中某列的值最小 _k_ 个非 NULL 值。如果多条数据取值一样,全部取用又会超出 k 条限制时,系统会从相同值中随机选取符合要求的数量返回。 **功能说明**:统计表/超级表中某列的值最小 _k_ 个非 NULL 值。如果多条数据取值一样,全部取用又会超出 k 条限制时,系统会从相同值中随机选取符合要求的数量返回。
@ -828,7 +829,7 @@ SELECT BOTTOM(field_name, K) FROM { tb_name | stb_name } [WHERE clause];
### FIRST ### FIRST
```sql ```sql
SELECT FIRST(field_name) FROM { tb_name | stb_name } [WHERE clause]; FIRST(expr)
``` ```
**功能说明**:统计表/超级表中某列的值最先写入的非 NULL 值。 **功能说明**:统计表/超级表中某列的值最先写入的非 NULL 值。
@ -848,7 +849,7 @@ SELECT FIRST(field_name) FROM { tb_name | stb_name } [WHERE clause];
### INTERP ### INTERP
```sql ```sql
SELECT INTERP(field_name) FROM { tb_name | stb_name } [WHERE where_condition] RANGE(timestamp1,timestamp2) EVERY(interval) FILL({ VALUE | PREV | NULL | LINEAR | NEXT}); INTERP(expr)
``` ```
**功能说明**:返回指定时间截面指定列的记录值或插值。 **功能说明**:返回指定时间截面指定列的记录值或插值。
@ -871,7 +872,7 @@ SELECT INTERP(field_name) FROM { tb_name | stb_name } [WHERE where_condition] RA
### LAST ### LAST
```sql ```sql
SELECT LAST(field_name) FROM { tb_name | stb_name } [WHERE clause]; LAST(expr)
``` ```
**功能说明**:统计表/超级表中某列的值最后写入的非 NULL 值。 **功能说明**:统计表/超级表中某列的值最后写入的非 NULL 值。
@ -892,7 +893,7 @@ SELECT LAST(field_name) FROM { tb_name | stb_name } [WHERE clause];
### LAST_ROW ### LAST_ROW
```sql ```sql
SELECT LAST_ROW(field_name) FROM { tb_name | stb_name }; LAST_ROW(expr)
``` ```
**功能说明**:返回表/超级表的最后一条记录。 **功能说明**:返回表/超级表的最后一条记录。
@ -911,7 +912,7 @@ SELECT LAST_ROW(field_name) FROM { tb_name | stb_name };
### MAX ### MAX
```sql ```sql
SELECT MAX(field_name) FROM { tb_name | stb_name } [WHERE clause]; MAX(expr)
``` ```
**功能说明**:统计表/超级表中某列的值最大值。 **功能说明**:统计表/超级表中某列的值最大值。
@ -926,7 +927,7 @@ SELECT MAX(field_name) FROM { tb_name | stb_name } [WHERE clause];
### MIN ### MIN
```sql ```sql
SELECT MIN(field_name) FROM {tb_name | stb_name} [WHERE clause]; MIN(expr)
``` ```
**功能说明**:统计表/超级表中某列的值最小值。 **功能说明**:统计表/超级表中某列的值最小值。
@ -941,7 +942,7 @@ SELECT MIN(field_name) FROM {tb_name | stb_name} [WHERE clause];
### MODE ### MODE
```sql ```sql
SELECT MODE(field_name) FROM tb_name [WHERE clause]; MODE(expr)
``` ```
**功能说明**返回出现频率最高的值若存在多个频率相同的最高值输出NULL。 **功能说明**返回出现频率最高的值若存在多个频率相同的最高值输出NULL。
@ -956,7 +957,7 @@ SELECT MODE(field_name) FROM tb_name [WHERE clause];
### SAMPLE ### SAMPLE
```sql ```sql
SELECT SAMPLE(field_name, K) FROM { tb_name | stb_name } [WHERE clause] SAMPLE(expr, k)
``` ```
**功能说明** 获取数据的 k 个采样值。参数 k 的合法输入范围是 1≤ k ≤ 1000。 **功能说明** 获取数据的 k 个采样值。参数 k 的合法输入范围是 1≤ k ≤ 1000。
@ -978,7 +979,7 @@ SELECT SAMPLE(field_name, K) FROM { tb_name | stb_name } [WHERE clause]
### TAIL ### TAIL
```sql ```sql
SELECT TAIL(field_name, k, offset_val) FROM {tb_name | stb_name} [WHERE clause]; TAIL(expr, k [, offset_rows])
``` ```
**功能说明**:返回跳过最后 offset_val 个,然后取连续 k 个记录,不忽略 NULL 值。offset_val 可以不输入。此时返回最后的 k 个记录。当有 offset_val 输入的情况下,该函数功能等效于 `order by ts desc LIMIT k OFFSET offset_val` **功能说明**:返回跳过最后 offset_val 个,然后取连续 k 个记录,不忽略 NULL 值。offset_val 可以不输入。此时返回最后的 k 个记录。当有 offset_val 输入的情况下,该函数功能等效于 `order by ts desc LIMIT k OFFSET offset_val`
@ -995,7 +996,7 @@ SELECT TAIL(field_name, k, offset_val) FROM {tb_name | stb_name} [WHERE clause];
### TOP ### TOP
```sql ```sql
SELECT TOP(field_name, K) FROM { tb_name | stb_name } [WHERE clause]; TOP(expr, k)
``` ```
**功能说明** 统计表/超级表中某列的值最大 _k_ 个非 NULL 值。如果多条数据取值一样,全部取用又会超出 k 条限制时,系统会从相同值中随机选取符合要求的数量返回。 **功能说明** 统计表/超级表中某列的值最大 _k_ 个非 NULL 值。如果多条数据取值一样,全部取用又会超出 k 条限制时,系统会从相同值中随机选取符合要求的数量返回。
@ -1015,7 +1016,7 @@ SELECT TOP(field_name, K) FROM { tb_name | stb_name } [WHERE clause];
### UNIQUE ### UNIQUE
```sql ```sql
SELECT UNIQUE(field_name) FROM {tb_name | stb_name} [WHERE clause]; UNIQUE(expr)
``` ```
**功能说明**:返回该列的数值首次出现的值。该函数功能与 distinct 相似,但是可以匹配标签和时间戳信息。可以针对除时间列以外的字段进行查询,可以匹配标签和时间戳,其中的标签和时间戳是第一次出现时刻的标签和时间戳。 **功能说明**:返回该列的数值首次出现的值。该函数功能与 distinct 相似,但是可以匹配标签和时间戳信息。可以针对除时间列以外的字段进行查询,可以匹配标签和时间戳,其中的标签和时间戳是第一次出现时刻的标签和时间戳。
@ -1034,7 +1035,7 @@ SELECT UNIQUE(field_name) FROM {tb_name | stb_name} [WHERE clause];
### CSUM ### CSUM
```sql ```sql
SELECT CSUM(field_name) FROM { tb_name | stb_name } [WHERE clause] CSUM(expr)
``` ```
**功能说明**累加和Cumulative sum输出行与输入行数相同。 **功能说明**累加和Cumulative sum输出行与输入行数相同。
@ -1057,7 +1058,12 @@ SELECT CSUM(field_name) FROM { tb_name | stb_name } [WHERE clause]
### DERIVATIVE ### DERIVATIVE
```sql ```sql
SELECT DERIVATIVE(field_name, time_interval, ignore_negative) FROM tb_name [WHERE clause]; DERIVATIVE(expr, time_interval, ignore_negative)
ignore_negative: {
0
| 1
}
``` ```
**功能说明**:统计表中某列数值的单位变化率。其中单位时间区间的长度可以通过 time_interval 参数指定,最小可以是 1 秒1signore_negative 参数的值可以是 0 或 1为 1 时表示忽略负值。 **功能说明**:统计表中某列数值的单位变化率。其中单位时间区间的长度可以通过 time_interval 参数指定,最小可以是 1 秒1signore_negative 参数的值可以是 0 或 1为 1 时表示忽略负值。
@ -1076,7 +1082,12 @@ SELECT DERIVATIVE(field_name, time_interval, ignore_negative) FROM tb_name [WHER
### DIFF ### DIFF
```sql ```sql
SELECT {DIFF(field_name, ignore_negative) | DIFF(field_name)} FROM tb_name [WHERE clause]; DIFF(expr [, ignore_negative])
ignore_negative: {
0
| 1
}
``` ```
**功能说明**:统计表中某列的值与前一行对应值的差。 ignore_negative 取值为 0|1 , 可以不填,默认值为 0. 不忽略负值。ignore_negative 为 1 时表示忽略负数。 **功能说明**:统计表中某列的值与前一行对应值的差。 ignore_negative 取值为 0|1 , 可以不填,默认值为 0. 不忽略负值。ignore_negative 为 1 时表示忽略负数。
@ -1096,7 +1107,7 @@ SELECT {DIFF(field_name, ignore_negative) | DIFF(field_name)} FROM tb_name [WHER
### IRATE ### IRATE
```sql ```sql
SELECT IRATE(field_name) FROM tb_name WHERE clause; IRATE(expr)
``` ```
**功能说明**:计算瞬时增长率。使用时间区间中最后两个样本数据来计算瞬时增长速率;如果这两个值呈递减关系,那么只取最后一个数用于计算,而不是使用二者差值。 **功能说明**:计算瞬时增长率。使用时间区间中最后两个样本数据来计算瞬时增长速率;如果这两个值呈递减关系,那么只取最后一个数用于计算,而不是使用二者差值。
@ -1111,7 +1122,7 @@ SELECT IRATE(field_name) FROM tb_name WHERE clause;
### MAVG ### MAVG
```sql ```sql
SELECT MAVG(field_name, K) FROM { tb_name | stb_name } [WHERE clause] MAVG(expr, k)
``` ```
**功能说明** 计算连续 k 个值的移动平均数moving average。如果输入行数小于 k则无结果输出。参数 k 的合法输入范围是 1≤ k ≤ 1000。 **功能说明** 计算连续 k 个值的移动平均数moving average。如果输入行数小于 k则无结果输出。参数 k 的合法输入范围是 1≤ k ≤ 1000。
@ -1134,7 +1145,7 @@ SELECT MAVG(field_name, K) FROM { tb_name | stb_name } [WHERE clause]
### STATECOUNT ### STATECOUNT
```sql ```sql
SELECT STATECOUNT(field_name, oper, val) FROM { tb_name | stb_name } [WHERE clause]; STATECOUNT(expr, oper, val)
``` ```
**功能说明**:返回满足某个条件的连续记录的个数,结果作为新的一列追加在每行后面。条件根据参数计算,如果条件为 true 则加 1条件为 false 则重置为-1如果数据为 NULL跳过该条数据。 **功能说明**:返回满足某个条件的连续记录的个数,结果作为新的一列追加在每行后面。条件根据参数计算,如果条件为 true 则加 1条件为 false 则重置为-1如果数据为 NULL跳过该条数据。
@ -1161,7 +1172,7 @@ SELECT STATECOUNT(field_name, oper, val) FROM { tb_name | stb_name } [WHERE clau
### STATEDURATION ### STATEDURATION
```sql ```sql
SELECT stateDuration(field_name, oper, val, unit) FROM { tb_name | stb_name } [WHERE clause]; STATEDURATION(expr, oper, val, unit)
``` ```
**功能说明**:返回满足某个条件的连续记录的时间长度,结果作为新的一列追加在每行后面。条件根据参数计算,如果条件为 true 则加上两个记录之间的时间长度(第一个满足条件的记录时间长度记为 0条件为 false 则重置为-1如果数据为 NULL跳过该条数据。 **功能说明**:返回满足某个条件的连续记录的时间长度,结果作为新的一列追加在每行后面。条件根据参数计算,如果条件为 true 则加上两个记录之间的时间长度(第一个满足条件的记录时间长度记为 0条件为 false 则重置为-1如果数据为 NULL跳过该条数据。
@ -1189,7 +1200,7 @@ SELECT stateDuration(field_name, oper, val, unit) FROM { tb_name | stb_name } [W
### TWA ### TWA
```sql ```sql
SELECT TWA(field_name) FROM tb_name WHERE clause; TWA(expr)
``` ```
**功能说明**:时间加权平均函数。统计表中某列在一段时间内的时间加权平均。 **功能说明**:时间加权平均函数。统计表中某列在一段时间内的时间加权平均。