我正在使用AdventureWorks2016数据仓库数据库。我创建了一个名为“总销售排名”的量度,如下所示。我只是想根据销售量(互联网销售量)对每种产品进行排名。下表中的“总销售”列是度量(Sum([SalesAmount]))
,用于汇总所有销售。我不知道为什么RankX为每个产品返回1。没有合适的过滤器。所有表都正确相关。
顺便说一下,还有其他类似问题,但又有足够不同的地方,答案对这种情况没有帮助。
答案 0 :(得分:2)
您需要使用ALL('Product')而不是仅使用'Product'。
由于您将产品作为过滤器(是的,您这样做!),因此RANKX对于报表中的每一行只能“看到”一条记录(对于该行的产品)。这就是为什么您得到“ 1”的原因。相反,在每个记录中,您需要“查看”整个表,以便RANKX可以比较多行。这是通过使用ALL()函数(或ALLSELECTED等)完成的。
本文可能会进一步帮助您: Using RANKX