TreeviewCopyright © aleen42 all right reserved, powered by aleen42
聚合及数学函数使用(一)
零、基础知识了解
0.1、算数运算符
运算符 | 描述 |
---|---|
+ | 加 |
- | 减 |
* | 乘 |
/ | 除 |
% | 取余 |
0.2、关系运算符
运算符 | 描述 |
---|---|
> | 大于 |
>= | 大于等于 |
< | 小于 |
<= | 小于等于 |
== | 等于 |
!= | 不等于 |
0.3、逻辑运算符
运算符 | 描述 |
---|---|
&& | 且 |
|| 或
一、简单算数运算
- 可以通过算数运算符进行加减乘除赋值
例如:字段A为数值类型,字段B为数值类型,字段C为数值类型。 C=A+B 那么就可以在C字段上添加公式A+B
- 实现效果
二、聚合函数
2.1、汇总合计
描述 | 详情 |
---|---|
公式 | sum(list,"express") |
功能描述 | 主表A字段等于子表A字段的和 (汇总求和) |
使用示例 | sum(aggregate_chList,"aggregate_chList.A_ch") |
- 实现效果
2.2、平均值
描述 | 详情 |
---|---|
公式 | avg(list,"express") |
功能描述 | 获取集合中数值类型字段的平均值) |
使用示例 | avg(aggregate_chList,"aggregate_chList.A_ch") |
- 实现效果
2.3、统计子表行数
描述 | 详情 |
---|---|
公式 | count(list) |
功能描述 | 计算集合的数量 |
使用示例 | count(aggregate_chList) |
- 实现效果
2.4、统计满足条件的子表行数
2.4.1、单个条件
描述 | 详情 |
---|---|
公式 | countifs(list,"条件表达式") |
功能描述 | 计算满足条件的集合的数量 |
使用示例 | countifs(aggregate_chList,"aggregate_chList.A_ch>3") |
- 实现效果
2.4.2、多个条件
描述 | 详情 |
---|---|
公式 | countifs(list,"条件表达式") |
功能描述 | 计算满足条件的集合的数量 |
使用示例 | countifs(aggregate_chList,"(aggregate_chList.A_ch>3)&&(aggregate_chList.A_ch<6)") |
- 实现效果
2.5、去除重复值后数量
描述 | 详情 |
---|---|
公式 | uniqueCount(list,"expression") |
功能描述 | 获取列表中数据去重后的数量 |
使用示例 | uniqueCount(aggregate_chList,"aggregate_chList.A_ch") |
- 实现效果
2.6、集合字符连接合并为字符串返回
2.6.1、拼接集合返回字符串
描述 | 详情 |
---|---|
公式 | groupConcat(list,"expression","splitchar",isDistinct) |
功能描述 | 根据expression规则对list列表的数据计算,对计算结果去重或者不去重后用splitchar字符连接合并为字符串返回 例如传入列表为[a,b,c,d,a] 返回a,b,c,d 传入列表[1,2,3] 返回 1,2,3 , 传入列表[a,b,null,c] 返回a,b,c 参数:list-列表 参数:expression-表达式 参数:splitchar-分割符 参数:isDistinct-是否去重,0:否,1:是 返回值:String |
使用示例 | groupConcat(aggregate_chList,"aggregate_chList.A_ch",",",0) |
- 实现效果
因为是数组带出了6位小数
2.6.2、套用公式实现小数位数优化
那么如果改为显示两位呢,可以对其套用公式
(数学函数) - numToFixed(num,length) - 保留指定数量的小数,超出四舍五入,不足补0
groupConcat(aggregate_chList,"numToFixed(aggregate_chList.A_ch,2)",",",0)
- 实现效果
三、数学函数
3.1、向上取整
描述 | 详情 |
---|---|
公式 | ceil(num) |
功能描述 | 向上取整函数 |
使用示例 | ceil(A) |
- 实现效果
3.2、向下取整
描述 | 详情 |
---|---|
公式 | floor(num) |
功能描述 | 向下取整函数 |
使用示例 | floor(A) |
- 实现效果
3.3、比大小返回最大值
描述 | 详情 |
---|---|
公式 | max(num,num) |
功能描述 | 比较两个数的大小并返回最大值 |
使用示例 | max(B,A) |
- 实现效果
3.4、比大小返回最小值
描述 | 详情 |
---|---|
公式 | min(num,num) |
功能描述 | 比较两个数的大小并返回最小值 |
使用示例 | min(B,A) |
- 实现效果
3.5、保留指定数量的小数
描述 | 详情 |
---|---|
公式 | numToFixed(num,length) |
功能描述 | 保留指定数量的小数,超出四舍五入,不足补0 |
使用示例 | numToFixed(A,1) |
- 实现效果
3.6、四舍五入取整
描述 | 详情 |
---|---|
公式 | round(num) |
功能描述 | 将某一数值四舍五入并取整 |
使用示例 | round(A) |
- 实现效果
3.7、数值格式化返回字符串
描述 | 详情 |
---|---|
公式 | numberFormat |
功能描述 | 将数值格式化 参数:num-数值 参数:pattern-模式: # 表示如果该位存在字符,则显示字符,如果不存在,则不显示 0 表示如果该位存在字符,则显示字符,如果不存在,则显示0 - 表示输出为负数,要放在最前面,例如 -000.00 , 表示在数字中添加逗号,例如做千分位的分割 % 表示乘以100并显示为百分数,要放在最后 \u2030 表示乘以1000并显示为千分数,要放在最后,例如 #0\u2030 也可以自定义常量,比如在数值结尾加单位kg,则需要写成 ##0 kg 返回值:String 示例: 整数千分位分割显示 #,#00 数值保留2位小数显示 #00.00 按百分比显示且最大保留2位小数 #.##% 数值结尾增加单位kg #kg |
使用示例 | numberFormat(A,"#0.0 kg") |
- 实现效果
3.8、金额转大写
描述 | 详情 |
---|---|
公式 | convertMnyToBlock(num,lang) |
功能描述 | 按固定语言将金额转大写(支持中文-zh和英文-en) |
使用示例 | convertMnyToBlock(A,"zh") |
- 实现效果