0

假设我有这样的数据:

类型 订单号 优先 运输方式
盒子 1 高的 UPS
杂项 1 高的 UPS
盒子 2 标准 InstaBox
盒子 3 标准 UPS
盒子 3 标准 UPS
盒子 3 标准 UPS
盒子 4 标准 Instabox
盒子 5 标准 Instabox
盒子 5 标准 Instabox
盒子 6 标准 UPS
盒子 7 标准 UPS

我想计算所有所谓的“私人订单”。它们是具有唯一订单号和标准优先级和 UPS 交付的箱子。(本例中有 2 个,6 和 7)然后我想计算所有具有标准优先级的框并减去所有私人订单。(有 9 个具有标准优先级的盒子,减去 2 个私人订单 = 7。)

这在 Tableau 中可行吗?我想在文本框中显示数字 7。

4

1 回答 1

1

使用Private orders此字段

IF 
{FIXED [Type], [Ordernumber] : COUNT([Ordernumber])} = 1
AND [Type] = 'Boxes' And [Priority] = 'Standard' And [DeliveryMethod] = 'UPS'
THEN 1 ELSE 0 END

对于所有盒子都使用这个

Sum(
If [Type] = 'Boxes' And [Priority] = 'Standard' then 1 else 0 end
) 

所以对于最终输出,您可以直接说calculation2

Sum(
If [Type] = 'BOXES' And [Priority] = 'Standard' then 1 else 0 END
) -
Sum(IF 
{FIXED [Type], [OrderNumber] : COUNT([OrderNumber])} = 1
AND [Type] = 'BOXES' And [Priority] = 'Standard' And [DeliveryMethod] = 'UPS'
THEN 1 ELSE 0 END)

对于匹配模式,将上述字段更改为calculation3

Sum(
If [Type] = 'BOXES' And [Priority] = 'Standard' then 1 else 0 END
) -
Sum(IF 
{FIXED [Type], [OrderNumber] : COUNT([OrderNumber])} = 1
AND [Type] = 'BOXES' And [Priority] = 'Standard' And REGEXP_MATCH([DeliveryMethod], "UPS")
THEN 1 ELSE 0 END)

使用的数据

在此处输入图像描述

结果

在此处输入图像描述

于 2021-02-27T01:13:24.663 回答