Tableau 提供了各种逻辑函数来对数据执行逻辑运算。它们是 Tableau 的 AND、NOT、OR、IF、ELSEIF、IF Else、CASE、ISNULL、IFNULL、ZN、IIF 等。在本文中,我们将向您展示如何使用逻辑函数及示例。
为了演示这些 Tableau 逻辑函数,我们将使用“Global Super Store”Excel 工作簿中的数据。因此,请参考 连接到 Excel 文件 和 CASE 文章以了解连接设置。

Tableau 逻辑函数
以下示例将向您展示逻辑函数列表。
Tableau AND 函数
Tableau AND 函数用于检查多个表达式,AND 的语法如下所示
Expression_1 AND Expression_2
从上面的语法可以看出,AND 函数接受两个参数。如果两个条件都为 True,则返回 True。否则,返回 False。
为了演示这些 Tableau 逻辑 AND 函数,我们必须使用计算字段。要创建计算字段,请导航到“分析”选项卡并选择“创建计算字段…”选项。

单击“创建计算字段…”选项后,将打开以下窗口。在这里,我们将默认计算名称重命名为 AND Function。请参阅 IF 语句 和其他关于函数的文章。
它将检查 Profit 是否大于 0 且 Quantity 是否大于 25000。如果这两个条件都为真,Tableau 逻辑 AND 函数将返回“Good”;否则,将返回“Bad”。
IF(SUM([Profit]) > 0 AND SUM(Quantity) > 25000) THEN 'Good' ELSE 'Bad' END

我将此 AND 计算字段添加到表中(通过将字段拖到“行”架)。请参考 创建表报告 和 格式设置 文章以了解创建表的過程。

Tableau 逻辑 OR 函数
Tableau OR 函数就像英语中的“或”语句。如果两个条件都为 False,则返回 False;否则,返回 True。此 OR 的语法是
Expression_1 OR Expression_2
以下语句将在其中一个条件为 True 时返回“Good”
IF(SUM([Profit]) > 0 OR SUM(Quantity) > 300000) THEN 'Good' ELSE 'Bad' END

我将此字段添加到“行”架

Tableau IIF 函数
IIF 函数是If Else 函数的简单版本。如果两个条件都为 True,则返回第一个语句;否则,返回第二个语句。此 Tableau IIF 函数的语法是
IIF(Expression, True_statement, False_Statement)
以下 Tableau IIF 函数在条件为 True 时返回 Profit。否则,将返回 Loss。
IIF(SUM([Profit]) > 0, 'Profit', 'Loss')

现在您可以看到 Tableau IIF 函数的结果

NOT
Tableau NOT 函数返回完全相反的结果,即 True 变为 False,反之亦然,NOT 的语法是
NOT(Expression)
以下 Not 语句在条件为 True 时返回 Loss。否则,将返回 Profit。
IF(NOT SUM([Profit]) > 0) THEN 'Profit' ELSE 'Loss' END

您可以自己查看 NOT 的结果

Tableau ISNULL 函数
为了演示此 Tableau ISNULL 函数,我们将使用下面显示的表。

可以ISNULL 函数检查它是否为 NULL 或不是。如果为 NULL,则返回 TRUE;否则,返回 False。
Tableau ISNULL 函数的语法是
ISNULL(Expression)
以下 Tableau ISNUL 语句将检查“Service Grade 2”列中的 null 值。
ISNULL([Service Grader 2])

如您所见,此 Tableau ISNULL 函数为蓝色产品返回了 True。

ZN
ZN 函数将返回非 NULL 值的原始值,对于 NULL 值则返回 0。简单来说,Tableau 中的 ZN 会将 NULL 值替换为 0。
Tableau 逻辑 ZN 函数的语法是
ZN(Expression)
以下逻辑函数语句会将 NULL 替换为 0。
ZN([Service Grader 2])

从下面的屏幕截图中,您可以看到 ZN 函数的结果。

Tableau IFNULL 函数
IFNULL 函数用于将 NULL 值替换为您自己的值。Tableau IFNULL 函数的语法是
IFNULL(Expression, Value)
如果存在 null 值,则以下IFNULL语句会将 null 值替换为 10。
IFNULL([Service Grader 2], 10)

让我们看看 Tableau IFNULL 函数的结果。
