tableau-api - 如何在tableau中使用exists和not exists
问题描述
我正在努力解决 tableau 中存在和不存在的问题,就像我在 DB 查询中那样。我在这里发布了示例数据。
我想找出有 ABC 和 ABCD 的位置以及有多少位置。
哪些位置和多少个位置有 ABCD12345678、ABCD1 而不是 ABC。
我可以有多个这样的组合。谁能帮我解决这个要求?
HNS_LOCATION_ID HNS_PRODUCT_CODE
1000682 ABC
1000682 ABCD
1000682 ABCD1
1000682 ABCD12
1000682 ABCD123
1000682 ABCD1234
1000682 ABCD12345
1000682 ABCD123456
1000682 ABCD1234567
1000683 ABCD
1000683 ABCD1234567
1000683 ABCD12
1000683 ABCD1
1000683 ABCD1234
1000683 ABCD123456
1000683 ABCD12345
1000683 ABCD123
1000683 ABC
1000685 ABCD
1000685 ABCD12
1000685 ABCD1234567
1000685 ABCD1
1000685 ABCD12345
1000685 ABCD123
1000685 ABCD1234
1000685 ABCD123456
1000685 ABCD12345678
解决方案
对于第二种情况,只需定义一个名为meet_criteria的计算字段为:
max([HNS_PRODUCT_CODE] = "ABCD12345678") and
max([HNS_PRODUCT_CODE] = "ABCD1") and
not max([HNS_PRODUCT_CODE] = "ABCD")
由于 True 被认为大于 False,因此该计算表明您的标准是否得到满足。(您可以将 max(condition) 解读为“至少一行满足条件。”)
有多种方法可以使用此计算字段。例如,您可以将 meet_criteria 放在 Rows 上,将 HNS_LOCATION_ID 放在 Text 上,以查看满足和不满足条件的位置。(假设您将 HNS_LOCATION_ID 视为维度)
您可以根据 HNS_LOCATION_ID 字段定义一个名为locations_matching_criteria的集合,并使用 meet_criteria 计算作为定义它的条件。从字面上看,右键单击数据窗格中的 HNS_LOCATION_ID,选择创建集,从常规选项卡上的单选按钮中选择全部使用,然后转到条件选项卡并使用 meet_criteria 计算字段作为条件。该集合现在包含您的匹配位置。
然后您可以在公式中使用该集合并构建您的可视化 - 例如,将您的集合放在行上,将 COUNTD(HNS_LOCATION_ID) 放在列上。有很多有趣的方式来使用集合
推荐阅读
- php - PHPUnit 9 支持将 expectException() 与 PHPUnit\Framework\Error\Error 一起使用已弃用
- android - 自定义服务器 jitsi meet with sdk on Android 不起作用
- php - PHP: shell_exec(); 与 cmd 工作不一样?[WIN10命令行]
- typescript - https.createServer 不工作 REST 服务器
- python - 将每个元组添加一个特定的数字
- python - “NoneType”对象在尝试查找用户是否在特定服务器中时没有属性“get_member”错误 discord.py
- php - PHP - 新对象的默认函数参数
- jenkins - Jenkinsfile 代理“dockerfile”参数化“dir”参数
- javascript - EJS 替代 PHP die()
- android - 如何在 Android 11 中使用 NDK 从共享存储中打开文件