在DAX中对度量值(与列值相对)进行排名?

时间:2017-03-16 19:56:12

标签: powerbi dax

问题的简短版本:如何根据计算出的度量创建排名?

问题背景 我有一个表/查询,为每个员工产生许多行,每行有time taken值。

我想计算每个employee所花费的平均时间,然后为每个employee提供一行表格,显示他们的name,平均值{{ 1}}和time taken(基于rank)。

为了完成第一部分,我创建了一个名为time taken的度量,并将其设置为:

AverageTimeLength

然后我编码了以下内容:

AverageTimeLength = Average(Table_name[Column_name]) 

这两项措施;我能够将第二个插入到我创建的新表格图表中,但不幸的是,我无法在其上使用AverageTimeLength_employee = CALCULATE([AverageTimeLength], GROUPBY(Table_name, Table_name[EmployeeName])) ,因为度量值不是来自列。如果我尝试创建一个派生自该度量的列(即RANKX()),我只会在指责column_name = [AverageTimeLength_employee]循环推理时出错。

我想做的事情似乎应该很简单;有谁知道如何创建一个简单的排名参数,对度量值进行排名?

1 个答案:

答案 0 :(得分:1)

您可以创建Average指标并在Rank指标中使用它,如下所示:

Average = AVERAGE([Time taken]) 

Rank = IF (
    HASONEVALUE ( Table_Name[Name] ), 
    RANKX ( ALL ( Table_Name[Name] ), [Average])
)

希望它有所帮助。