我有一个包含这样数据的表:
StoreID | Week/End | Sales
===========================
1 | 9/2 | 10
2 | 9/2 | 5
3 | 9/2 | 3
1 | 9/9 | 5
2 | 9/9 | 2
3 | 9/9 | 10
我需要做的是按周对销售额进行排名,然后将排名值加起来。
我尝试使用RANKX这样的措施:
=RANKX(ALL(Stores), SUMX(RELATEDTABLE(Sales), [Sales]))
这将给我下表:
StoreID | Week/End | Sales | Rank
=====================================
1 | 9/2 | 10 | 1
2 | 9/2 | 5 | 2
3 | 9/2 | 3 | 3
1 | 9/9 | 5 | 2
2 | 9/9 | 2 | 3
3 | 9/9 | 10 | 1
我现在需要做的是按Store添加排名列,所以最后我会得到一个这样的表:
StoreID | Overall Rank
=======================
1 | 3
2 | 5
3 | 4
因此,商店1的值为3,因为w / e 9/2为1,aw / e 9/9等级为2.商店2的总排名为5,因为w / e 9/2 of 2和aw / e 9/9等级为3,依此类推。
我会尝试在SQL中执行此操作,但遗憾的是我的一些基本数据是在Excel中,其中一些是在SQL中,因此我需要在DAX或M中执行此操作。
任何想法都将不胜感激!
答案 0 :(得分:1)
据我了解您正在使用Power BI。如果你在表格菜单(第二个)中,我会创建一个列名为StoreID的新表,并写入变量1,2和3.
然后在关系菜单(第三个)中按StoreID连接这些列。当您返回表格菜单中的第二个表格时,可以选择添加计算列:
Overall_Rank= CALCULATE(SUM(first_table[Rank]))
当它们连接时,它将识别匹配的StoreID,因此不需要任何其他过滤器。