如何划分聚合和求和函数

How to divide an Aggregate and Sum function

我正在使用 Tableau 并尝试创建一个公式,该公式将 return 通过除以净销售额/客流量来计算每位走进商店的顾客的价值。当我尝试组合这两个单独的公式时,出现以下错误:无法将聚合和非聚合参数与此函数混合。我尝试划分的两个函数是:

SOT = (SUM([Sales Net])-SUM([Sales Gcard Net]))/SUM([Traffic Perday]) and SOT Goal

当我在 Tableau 中查看它时,它表明 SOT 是一个聚合函数。我该如何解决才能获得

SOT / SOT Goal

聚合变量是在视图中计算的值,取决于 Tableau 中的聚合级别。例如如果 sum(Sales) 在 Region 维度旁边,或者在 Category 维度旁边,将在 Tableau 中显示不同的值。

为了避免错误,您可以使用多种解决方案。我最喜欢的确实是 LOD 表达式。在您看来,虽然我没有所需的示例数据,因此我无法在这里尝试不同的可能性,但我建议这应该可行-

SOT = ({SUM([Sales Net])}-{SUM([Sales Gcard Net])})/{SUM([Traffic Perday])}

请记住,此解决方案将 over-ride 您的过滤器,如果您使用过滤器,则必须将所有这些添加到 Context。

编辑

在尝试不同的可能性时记住这些事情...

  1. {SUM([Sales])} 将对 整个数据 和 {} 的销售额求和,即用花括号包裹求和函数将导致 return 的值为 non-aggregate。换句话说,这将用作 LOD,如果您将此字段添加到视图中,则每一行都会显示整个销售额的总和。

  2. {FIXED [DIMENSION NAME] : sum([Sales])} 将分别对每个维度值的销售额求和。固定语句 (LOD) 再次将 return 的值作为 non-aggregate 的值。如果您将此字段添加到视图中,该维度的总销售额将针对每个维度显示。