当前的问题我可能有点难以描述,但我会尽力而为。
目前,在我的工作簿中,我在产品级别遇到重复项,因此我创建了一个计算字段来解决此问题。我想知道过去一年哪些产品没有被引用,所以答案应该是1表示未引用,0 表示引用,我通过对% 产品未引用执行 if 语句来解决这个问题,公式如下所示:
IF [% Not Quoted] > 0
then 1
else 0
end
我将其命名为"未引用的产品"。这对我来说效果很好,
但是现在我想对未在供应商级别报价的产品进行计数或总和(?(,这意味着我的未报价产品需要按供应商名称分组。具体来说,我的目标是提供一个表格,列出所有未按供应商名称报价的产品,在产品级别没有重复。我尝试做的是使用之前计算的一个新的计算字段,我计算如下:
IF [Prod Not Quoted] = 1
then sum(1)
else 0
end
然而,后一种计算给了我所有报价和未报价产品的总和,以及我试图避免的重复。为什么IF [prod 未引用] = 1 那么 sum(1( 否则 0 结束不起作用?
有人在 Tableau 论坛上提出以下建议
SUM (IF [Prod Not Quoted] = 1 THEN 1 ELSE 0 END)
但是我得到的错误无法汇总尚未聚合的内容。
对于我遇到的问题,有什么解决方法吗?
如果在维度级别存在重复项,则可以使用 FIXED 计算在维度级别仅选择一行。例如:
{FIXED [Product]: MAX(quoted)}
这样做的意思是说"对于每个产品,最大报价值是多少?因此,如果您有重复项,它将只返回一个值
现在我们正在解决重复问题,我们可以将其包装在 SUM 中:
SUM({FIXED [Product]: MAX(quoted)})
要回答你关于为什么总和不起作用的问题,这是因为你试图做一个总和。如果您仍然想采用提供给您的方法,则可以将其更改为:
IF [Prod Not Quoted] = 1
then {FIXED [Product]: MAX(quoted)}
end
(我引用了聚合字段,但它将是你正在使用的度量值(