仪表盘进阶
默认 SELECT 中的列为 field,可以省略 ::field 后缀。 默认 WHERE 中的字段为 tag,可以省略 ::tag 后缀。 默认 GROUP BY 中的字段为 tag,可以省略 ::tag 后缀。 默认 ORDER BY 中的字段为 field,可以省略 ::field 后缀。
:::tip 提示
自定义函数目前以查询关键字与自定义类型区分。
- max(field),求 field 的最大值
- min(field),求 field 的最小值
- avg(field,求 field 的平均值
- mean(field),求 field 的平均值
- sum(field),求 field 的总和
- count(field|tag),求存在 field 或 tag 的数据条数
- distinct(field|tag),求 field 或 tag 的去重数
- percentiles(field,percent),求 field 的分位数
field type : float/int
percent type : float/int
percent range : 0<=percent<=100 - etc.
常量函数
- interval(unit),根据指定的单位,返回时间间隔,不符合限定单位返回 error
unit type:string
unit:”ns”、”us”、”µs”、”μs”、”ms”、”s”、”m”、”h”、”day” - now(),返回当前时间戳,单位为纳秒
- now_sec(),返回当前时间戳,单位为秒
- now_ms(),返回当前时间戳,单位为纳秒
- unix(),返回当前时间戳,单位为秒
- unix_ns(),返回当前时间戳,单位为纳秒
- date(),返回字符串形式的日期,比如:”2020-10-10“
- max_uint16()
- max_uint32()
- max_uint64()
- max_int8()
- max_int16()
- max_int32()
- max_int64()
- max_float32()
- max_float64()
- min_int8()
- min_int16()
- min_int32()
- min_int64()
- etc.
int(value) 将value转化为int64,不符合限定类型返回 error
bool(value) 将value转化为bool,不符合限定类型返回 error
float(value) 将value转化为float,不符合限定类型返回 error
duration(value) 将value转化为 time.Duration,不符合限定类型返回 error
etc.
关系运算函数
- eq(value1, value2),等价于 value1 == value2,返回 boolean
- neq(value1, value2),等价于 value1 != value2,返回 boolean
- gte(value1, value2),等价于 value1 >= value2,返回 boolean
- lt(value1, value2),等价于 value1 < value2,返回 boolean
- lte(value1, value2),等价于 value1 <= value2,返回 boolean
if(cond, true_expression, false_exprission),等价于 cond ? true_expression : false_exprission
逻辑运算函数
- andf(bool1,bool2,bool3) 与运算函数,等价于 bool1 && bool2 && bool3,返回bool
- orf(bool1,bool2,bool3) 或运算函数,等价于 bool1 || bool2 || bool3,返回bool
andf(eq(field1,field2),neq(field2,field3))
- include(key, value1, value2…),等价于 key IN (value1, value2), 返回 boolean
- max_value(value1, value2),返回两个值中的最大值
- min_value(value1, value2),返回两个值中的最小值
- substring(string, start, end) 字符串切片,取下标start-end的值,默认值“”
- tostring(interface{}) 转换为string,默认值“”
- format(temp, args…),类似于 c语言中的 printf
- parse_time(string, layout) 解析字符串为时间类型
- format_time(time, layout),格式化时间为字符串
- format_bytes(bytes),格式化字节数
- format_duration(duration),格式化 Duration
- trim(str, cutset) 删除字符串的头尾空白符,返回string
- trim_left(str, cutset) 删除字符串的头空白符,返回string
- trim_right(str, cutset) 删除字符串的尾空白符,返回string
- trim_space(str) 删除字符串的空白符,返回string
- trim_prefix(str, prefix)
- trim_suffix(str, suffix)
- map(value,k,v…)根据value值转换为k对应的v
- etc.
WHERE
- etc.