需求背景
今天遇到一个需求,在tableau中制作的拖拉式表格,需要匹配一个固定值。如表格中已经按时间+部门维度统计销售额、利润等数据,然后需要匹配部门维度的人员数据。因此简单的聚合函数是无法满足的。
一、解决方案
使用fixed函数
这是一个LOD函数,网上搜了下使用方式如下:
理解行级别表达式(Row Level Expressions)和视图级别表达式(View Level Expressions)是理解详细级别表达式(LOD=Level of Detail Expression)的基础;
而理解详细级别表达式与维度、度量的关系,以及LOD与操作顺序,则是深入理解LOD语法的关键——我在续篇中有详细介绍(【数据分析】Tableau详细级别表达式_位置与语法)。
{MIN[profits]}
{Fixed [year] : MIN[profits]}
{Fixed [year] ,[area]: MIN[profits]}
{Fixed [year] ,[area],[products]: MIN[profits]}
二、实战解决
1、先通过excel表关联,每一行都匹配部门人数数据。
2、设置固定维度是销售部门,然后计算字段公式如下:
{Fixed [销售部门]: min([部门人数])}
3、最后聚合求和可以匹配到每个部门的人数数据
总结
Fixed、include这种“表范围详细级别表达式”,可以深入了解下,好东西。
文章资料来源:
https://zhuanlan.zhihu.com/p/50649291