1 概述
度量分两种:度量(原子度量)和计算度量
- 原子度量:指从维度里直接获取到的,详参:创建度量
计算度量:是用多维表达式创建一个虚拟字段的数值,它不改变源数据,也不改变数据模型,如果你不在报表上使用它,甚至不知道它是什么样子的,
而一旦被拖拽到报表上,便会随着各种筛选和维度展现不同的数据,所以计算度量一般在报表交互时使用。
度量(原子度量)和计算度量的区别如下:
度量(原子度量) | 计算度量 |
没有使用聚合函数表达式构成的度量为原子度量。 | 使用了多维表达式构成的度量 |
可以更改汇总依据(聚合方式)。 | 没有更改汇总依据(聚合方式)的菜单选项 |
可以转换为维度类型。 | 不能转换为维度 |
支持的汇总依据(聚合方式):无。 | 支持的聚合函数:SUM,AVG,MIN,MAX,COUNT等,详参:多维聚合函数。 |
支持在查询中进行预览 | 不支持在查询中预览 |
如果开启了SQL引擎,只要勾选了计算度量无法走SQL引擎取数,详参:SQL引擎介绍
2 计算度量的模式以及特点
1)Smartbi提供了2种计算度量方式:向导、函数
- 向导:对于刚接触多维表达式的用户来说,可能编写计算度量有点头大,不知道怎么写? 别慌,Smartbi提供了向导模式创建度量。故名思义,“向导模式”就是通过在后台配置好多维表达式,再在界面上拖拽维度或度量即可实现一个新的计算度量。
目前产品内置的向导:数学运算、时间计算、汇总计算、文本转换、命名集几大类的向导,详参:自定义表达式模板
- 函数:多维提供了很多函数,通过多维表达式可以把多个函数进行组合运用,从而得到新的计算度量;多维表达式它有自己的语法,如果想了解多维表达式的,可查阅:数据模型引擎的基本语法及概念
2)计算度量特点:
- 不被存储
- 在使用时才计算(因此会根据上下文筛选而变动)
- 消耗CPU
3 入口说明
- 在模型中的入口:
- 在报表分析层都可以新建计算度量,仪表盘、即席分析、模型查询的入口在右侧【数据】tab的”业务数据集“下
4、计算度量的操作以及属性说明:
- 编辑:建好了计算度量,如果发现数据不对,可以编辑确认是否拖错了维度或度量
- 复制:在写好了一个计算度量,如果发现后面的度量也差不多是这个定义,可以先复制,再编辑微调,这样子可以提高效率。
- 数据格式:如果发现计算展示出来的效果格式不太对,可以重新选择其他格式或者去新建数据格式,详参:数据格式
- 转换规则:度量出来的是一个数值,如果想要显示成分组的效果或者用字符串进行替换的效果可以设置转换规则;比如0-100是的不达标,101-200是达标,200以上及格,那么就可以使用转换规则;详参:转换规则
- 脱敏规则:如果该计算度量是敏感数据,有些人可以查看,有些人不能查看,可以使用脱敏规则进行脱敏显示;详参:脱敏规则
4 示例说明
下面可以了解如何创建向导计算度量:
1 | 时间计算-前期/同期示例 |
2 | 时间计算-累计值 |
3 | 时间计算-同期累计 |
4 | 四则运算 |