我有三列的表[表1] OrganizationName,FieldName,Acres具有以下数据
组织名称字段名称英亩
ABC | F1 | 0.96
ABC | F1 | 0.96
ABC | F1 | 0.64
我想计算英亩的不同值之和 (例如:0.96 + 0.64)在DAX中。
答案 0 :(得分:0)
执行所需操作的问题之一是,许多度量依赖于过滤器而不是实际的表表达式。因此,获取不同的值列表,然后按这些值过滤表,只会使整个表退回。
迭代器函数很方便,并且可以对表表达式进行操作,因此请尝试使用SUMX
TotalDistinctAcreage = SUMX(DISTINCT(Table1[Acres]),[Acres])
这将生成一个表,该表是仅包含英亩的不同值的一列,然后将它们加起来。 请注意,这只是查看“英亩”列,因此,如果不同的字段和组织具有相同的种植面积-则该种植面积仍仅在此总和中计数一次。
如果您只是想在不同的行上简单地增加面积,则只需做一个小改动:
TotalAcreageOnDistinctRows = SUMX(DISTINCT(Table1),[Acres])
希望有帮助。
答案 1 :(得分:0)
好的,您添加了以下要求:
谢谢。 :)但是,我想为一个区域添加英亩的不同值 特殊的字段名。这可能吗? – 3小时前的Pooja
最简单的方法实际上是继续进行切片或过滤我给您的原始度量。但是,如果必须在DAX中应用过滤器上下文,则可以这样做:
Measure =
SUMX(
FILTER(
SUMMARIZE( Table1, [FieldName], [Value] )
, [FieldName] = "<put the name of your specific field here"
)
, [Value]
)