Tableau存在联合主键时如何实现for循环逻辑完成按主id的结果判定
Tableau 按主ID汇总判定结果实现方案
不需要额外实现for循环逻辑,直接使用Tableau内置的FIXED 层级详细表达式(LOD)即可快速实现需求,操作步骤如下:
- 步骤1:新建计算字段,命名为
主ID最终判定,输入如下公式:
IF {FIXED [id]: MIN(IF [result] = 'fail' THEN 0 ELSE 1 END)} = 0 THEN 'fail' ELSE 'pass' END
公式逻辑说明:先将result为fail的记录标记为0、pass的记录标记为1,再按主id分组取分组内最小值,只要分组内存在任意一条fail记录,最小值就为0,最终判定为fail;仅当分组内所有记录都是pass时最小值为1,最终判定为pass。
- 步骤2:将
id字段和新建的主ID最终判定字段拖入视图,即可得到每个主id对应的汇总结果,完全匹配你的示例预期:id=1为fail、id=2为pass、id=3为fail。
如果你的视图中存在其他过滤条件,需要让判定逻辑先执行再应用过滤的话,将对应过滤字段设置为上下文过滤器即可保证结果准确。
内容的提问来源于stack exchange,提问作者CCC
相关产品推荐
相关产品推荐

