本文档介绍算数表达式函数的语法与格式、相关的场景示例等。
累加运算。对多个值进行累加,值可以是字符串或者数值,不同的值数据类型必须一致。支持计算范围:整数 -2^52+1 ~ 2^52-1,浮点数 -1.8e308 ~ 1.8e308。
op_add(value1,value2)
参数说明如下:
参数 | 参数类型 | 是否必选 | 默认值 | 取值范围 | 说明 |
---|---|---|---|---|---|
value1 | Number 或者 String | 是 | / | / | 待计算的值。 |
value2 | Number 或者 String | 是 | / | / | 待计算的值。 |
函数示例 1:
场景:已知学生语数英各科分数,计算学生总分数。
加工规则:
f_set("total",op_add(v("math"),v("chinese"),v("english")))
日志样例:
{ "math": 96, "chinese": 98, "total": 274 }
加工结果:
{ "math": 96, "chinese": 98, "total": 274, "english": 80 }
函数示例 2:
场景:根据省市县街道,拼接出详细地址。
加工规则:
f_set("address",op_add("地址:",v("province"),v("city"),v("town"),v("detail")))
日志样例:
{ "province": "四川省", "city": "成都市", "town": "武侯区", "detail": "武侯祠大街231号" }
加工结果:
{ "province": "四川省", "city": "成都市", "town": "武侯区", "detail": "武侯祠大街231号", "address": "地址:四川省成都市武侯区武侯祠大街231号" }
减法运算。返回 value1 和 value2 的差。
op_sub(value1,value2)
参数说明如下:
参数 | 参数类型 | 是否必选 | 默认值 | 取值范围 | 说明 |
---|---|---|---|---|---|
value1 | Number | 是 | / | / | 待计算的值。 |
value2 | Number | 是 | / | / | 待计算的值。 |
场景:员工总数 100,其中男性 48 人,计算女性人数。
加工规则:
f_set("female",op_sub(v("total"),v("man")))
日志样例:
{ "total": 100, "female": 52 }
加工结果:
{ "total": 100, "female": 52, "man": 48 }
乘法运算。乘法计算,返回 value1 和 value2 的乘积。
op_mul(value1,value2)
参数说明如下:
参数 | 参数类型 | 是否必选 | 默认值 | 取值范围 | 说明 |
---|---|---|---|---|---|
value1 | Number | 是 | / | / | 待计算的值。 |
value2 | Number | 是 | / | / | 待计算的值。 |
场景:速度乘以时间计算路程。
加工规则:
f_set("distance",op_mul(v("speed"),v("time")))
日志样例:
{ "speed": 60, "time": 8 }
加工结果:
{ "distance": 480, "speed": 60, "time": 8 }
除法运算。返回 value1 除以 value2 的商,除数 value2 不能为 0。
op_add(value1,value2)
参数说明如下:
参数 | 参数类型 | 是否必选 | 默认值 | 取值范围 | 说明 |
---|---|---|---|---|---|
value1 | Number | 是 | / | / | 待计算的值。 |
value2 | Number | 是 | / | / | 待计算的值。 |
场景:总消费金额/人数计算人均消费
加工规则:
f_set("avg_cost",op_mul(v("cost"),v("people")))
日志样例:
{ "cost": 1500, "avg_cost": 150 }
加工结果:
{ "cost": 1500, "avg_cost": 150, "people": 10 }
加法运算。返回 value1、value2 的和,value 是可变参数,可计算多个值。
op_sum(value1,value2...)
参数说明如下:
参数 | 参数类型 | 是否必选 | 默认值 | 取值范围 | 说明 |
---|---|---|---|---|---|
value1 | Number | 是 | / | / | 待相加的值。 |
value2 | Number | 是 | / | / | 待相加的值。 |
场景:账单存储费用 150,流量费用 100,搜索费用 200,总费用 450。
加工规则:
f_set("total_cost",op_sum(v("storage_cost"),v("flow_cost"),v("search_cost")))
日志样例:
{ "storage_cost": 150, "flow_cost": 100, "total_cost": 450 }
加工结果:
{ "storage_cost": 150, "flow_cost": 100, "total_cost": 450, "search_cost": 200 }
求余计算。返回 value1 除以 value2 后得到的余数。
op_mod(value1,value2)
参数说明如下:
参数 | 参数类型 | 是否必选 | 默认值 | 取值范围 | 说明 |
---|---|---|---|---|---|
value1 | Number | 是 | / | / | 被除数。 |
value2 | Number | 是 | / | / | 除数。 |
场景:10 份下午茶,每人分 4 份,计算剩余份数 2。
加工规则:
f_set("remand",op_mod(v("total"),v("avg")))
日志样例:
{ "total": 10, "remand": 1, "avg": 4 }
加工结果:
{ "total": 10, "remand": 2, "avg": 4 }
判断是否为空。返回 bool 值。value 为空或者是 None 关键字时返回 True,否则返回 False。
op_null(value)
参数说明如下:
参数 | 参数类型 | 是否必选 | 默认值 | 取值范围 | 说明 |
---|---|---|---|---|---|
value | Number | 是 | / | / | 待判断的值。 |
函数示例 1:
场景:None 关键词为空。
加工规则:
f_set("op_null",op_null(None))
日志样例:
{ "region_id": 1, "region": "beijing" }
加工结果:
{ "region_id": 1, "op_null": "true", "region": "beijing" }
函数示例 2:
场景:region
字段非空。
加工规则:
f_set("region_null",op_null(v("region"))
日志样例:
{ "region_id": 1, "region": "beijing" }
加工结果:
{ "region_id": 1, "op_null": "true", "region": "beijing" }