Tableau技术问题:如何按指定列的最值返回对应整行数据
解决Tableau中显示总和最值对应整行数据的问题
步骤1:计算每个Parcel的总和
先创建计算字段Total,用来得到每个Parcel的两期数值之和:
[Period 1] + [Period 2]
步骤2:计算全局的最小/最大总和
使用LOD(详细级别表达式)计算整个数据集范围内的最值,确保拿到的是全局维度下的结果:
- 计算字段
全局最小Total:{MIN([Total])} - 计算字段
全局最大Total:{MAX([Total])}
步骤3:创建筛选标识字段
生成两个布尔型计算字段,标记出对应最值的行:
- 计算字段
显示最小总和行:[Total] = [全局最小Total] - 计算字段
显示最大总和行:[Total] = [全局最大Total]
步骤4:可视化展示目标行
- 展示最小总和行:将
Parcel拖入行功能区,Total拖入行功能区;把显示最小总和行拖到筛选器面板,勾选True,即可只显示Parcel为D、Total为-875的行。 - 展示最大总和行:同理,将
显示最大总和行拖到筛选器并勾选True,会显示Parcel为E、Total为3000的行。
关键说明
之前仅能拿到最值无法关联对应行,是因为直接使用MIN([Total])这类聚合函数时,Tableau仅返回数值结果;而LOD表达式{MIN([Total])}是在全局层面计算最值,再通过筛选字段匹配到对应的Parcel维度,实现数值与维度的关联。
内容的提问来源于stack exchange,提问作者VonHugenstein
相关产品推荐
相关产品推荐

