返回每个语句为true的值Tableau

时间:2017-05-25 15:44:38

标签: tableau

我正在尝试返回多个字段可能缺少值的记录。我有以下声明:

IF ISNULL([Sales Team]) THEN 'Sales Team'
   ELSEIF ISNULL([Portfolio]) THEN 'Portfolio'
   ELSEIF ISNULL([Category Type]) THEN 'Category Type'
   ELSEIF [Datasource] = 'DS1' AND ISNULL([Item Class Dtl]) THEN 'Item Class Dtl'
   ELSEIF ISNULL([Market]) THEN 'Market'
END

如果单个记录中的销售团队和投资组合为空,我想在各自的行下返回销售团队和投资组合金额。由于ELSEIF的性质,当Sales Team为NULL时,将排除投资组合金额。

我的最终目标是将仪表板中的10个工作簿中的内容减少到两个。我目前正在以单数形式检查NULLS,并将结果组合在一个仪表板中。

从此: enter image description here

对此: enter image description here

我是否可以使用另一个Tableau函数来实现此功能或其他方式来重写此功能?谢谢!

1 个答案:

答案 0 :(得分:0)

您需要将其分解为单独的计算字段。 因此,例如,销售团队计算结果如下:

IF ISNULL([Sales Team]) THEN 'Sales Team' END

为每个条件创建一个计算字段。然后你可以获得多个" true"单个记录的结果。

回应更新的问题:

  

如果销售团队和投资组合在我想要的单个记录中为NULL   返回销售团队和投资组合金额

因此,多个计算公式的合并将在计算金额的公式中进行。我目前不知道该数量的公式是什么样的,所以我将举一个例子。

测试NULL的公式(让我们调用此Sales Team Check)看起来像:

IF ISNULL([Sales Team]) THEN [Sales Team Amount] ELSE 0 END

每个条件都有一个公式。 然后,合并公式看起来像:

[Sales Team Check] + [Portfolio Check] + [Category Type Check] + [Datasource Check] + [Market Check]

这里的想法是,当您检查记录中的NULL字段时,不返回Text,而是返回金额,否则返回零。然后将这些检查的结果加起来。