认识Tableau的详细级别表达式
详细级别表达式(也称为 LOD 表达式)允许您在数据源级别和可视化项级别计算值。
但是,LOD 表达式可以让您更好地控制要计算的粒度级别。它们可以在较高粒度级别(包括)、较低粒度级别(排除)或完全独立级别(固定)执行。
一、LOD 表达式的类型:
(1)FIXED (2)INCLUDE (3)EXCLUDE
(1)FIXED
需求场景:
(1)FIXED 详细级别表达式使用指定的维度计算值,而不引用视图中的维度。也就是说,不引用视图中的任何其他维度。
(2)详细级别表达式还会忽略除上下文筛选器、数据源筛选器和数据提取筛选器之外的所有筛选器.即不受维度筛选器、度量筛选器、表计算筛选器的影响;
案例:
(1)计算每个区域的销售额总和
(2)将“Category”字段拖放到“行”功能区,视图维度变为“Region+Category”,此时,区域销售额和Sales的值并不相同,是因为区域销售额是按照区域Region进行聚合的,不会受新增维度“Category”的影响。
可以看出:Fixed关键字完全不受当前视图中的维度影响
是否需要对 FIXED 详细级别的结果进行聚合取决于视图中有什么维度。
例如,如果将视图中的"Region"维度去除的话,区域销售额的数据将会变为全国销售额的数据,因为区域销售额是按照地区Region进行聚合的,所以说当地区Region去除后,区域销售额会汇总各地区的销售额,变为全国的销售额。
(2)INCLUDE
除了视图中的任何维度之外,INCLUDE 详细级别表达式还将使用指定的维度计算值。
在纳入不在视图中的维度时,INCLUDE 详细级别表达式最有用。
使用场景:
I.要对数据以精细的详细级别进行计算然后重新聚合,并在可视化中以更高聚合度显示时
II.希望计算的详细级别在向下钻取或添加时也能同步更改;当在视图中添加或移除维度时(视图中的详细级别程度有所改变),基于 INCLUDE 详细级别表达式的字段将随之更改。
案例:
创建计算字段,计算每个客户的总销售额
将维度中“Region”拖放到列功能区;
将度量中”客户销售额“拖放到行功能区,并右击下拉后设置为平均值;
Include有个特点,就是如果视图中的详细级别程度有所改变,LOD表达式的结果也会跟着变化。比如上面的详细级别是“Region”,在向视图中添加了“Category”后,即数据的聚合度变低,数据颗粒度变高后,LOD表达式的结果会进行同步改变。
(3)EXCLUDE
EXCLUDE 详细级别表达式声明要从视图详细级别中忽略的维度。
EXCLUDE 详细级别表达式无法在行级别表达式(其中没有要忽略的维度)中使用,但可用于修改视图级别计算或中间的任何内容(也就是说,您可以使用 EXCLUDE 计算从某些其他详细级别表达式中移除维度)
使用场景归纳:
I.要对数据以较粗的详细级别进行计算然后重新聚合,并在可视化中以更低聚合度显示时
II.希望排除视图中的维度时
案例:
如下视图中的维度为地区“Region”和省/自治区“State”,如果我们要统计地区的销售额,就需要将省/自治区“State”字段排除,就需要用到Exclude关键字。
创建字段,使用LOD表达式,公式如下:
双击“Exclude State”字段,添加到视图中,因此处于相同地区的各省,它们的销售额都是一样的。
同理,如果想看全国的销售额,则需要排除地区“Region”和省/自治区“State”两个维度,
公式如下:
需要注意的是,如果在使用Exclude关键字的过程中,排除的是视图中没有的字段,视图并不会发生任何改变。
二、LOD 表达式语法:
{[FIXED | INCLUDE | EXCLUDE] <维度声明> : <聚合表达式>}
[FIXED | INCLUDE | EXCLUDE]:三选一,界定了当前使用的LOD表达式的范围关键字
<维度声明> :指定聚合表达式要联接到的一个或多个维度。使用逗号分隔各个维度
<聚合表达式>:聚合表达式是所执行的计算,用于定义目标维度
喜欢别忘点个赞哦~
笔芯~