2016-11-02 300 views
2

我有3类 和总销售额的度量维度计数 我所需的类别中的一个项,总计算字段

例如之间的比率 - 我有一个度量的水果(苹果,橘子,草莓) 我想苹果销售的总销售额

时遇到的语法之比。

sum(([sales(fruit)='Apple']))/sum([sales]) 

回答

1

ÿ你可以使用条件聚合来做到这一点。基本上你只嵌入if声明聚集函数里面,像这样:

SUM(IF [fruit] = 'Apple' THEN [sales] END)/SUM([sales]) 

的分子SUM忽略所有的非苹果,而分母包括所有的水果。

+0

这样,你将不得不为每一件物品创建一个专门的计算区域,这似乎不是最聪明的事情...... –

+0

只有3个类别。这是完全可管理的,并根据问题帮助OP使用语法。欢迎您提供“更聪明”的答案... – Nicarus

+0

我可以为每个组生成一个表格行,并将其视为使用“table down”计算的百分位数,以获得每个组的百分比。我实际上认为创建计算字段更容易 – user3581800

0

user3581800,非常类似的解决方案,但略有更强大(和复杂的也一样)是使用所谓的细节级别(LOD )表达式。

主要好处是,他们将让您“覆盖”过滤器应您需要使用它们(试着加入排除过滤器“橙色等)让我们创建一个新计算领域总销售额

{ FIXED : SUM([Sales]) } 

这将产生销售额的总和,不管是什么,然后根据Nicarus在他的回答表明,你可以创建一个计算字段,即使这一个应该更灵活:

SUM(IIF([Fruit] = "Apple", [Sales], 0))/SUM([Total Sales]) 

了解更多关于LOD Expressions on Tableau blog的威力。