Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Arenek
New Member

Rankx, Ranking by state and by city (multiple level of hierarchy) using Matrix style table

The right below data by State and by City sales needs to be ranked based on sales....the tricky part is that I would like to rank this within 1 MATRIX style table visual (not in 2 separate tables), so I can toggle/switch between both variables to produce the ranking by state and by city as you can see further below (this is called ranking by multiple level of hierarchy)

 

I know that to rank by state (for example),  you need to write something like this: 

RANKX(ALLSELECTED(table [State]), calculate(sum[sales])

 

Does anybody know the DAX to accomplish ranking by state and by city ?

 

StateCitySales
CaliforniaSan diego23
CaliforniaLos Angeles55
CaliforniaSan Francisco35
FloridaMiami32
FloridaOrlando48
FloridaJacksonville44
GeorgiaAtlanta46
GeorgiaAugusta31
GeorgiaSavannah53
   
StateRank 
Georgia1 
Florida2 
California3 
   
CityRank 
Los Angeles1 
Savannah2 
Orlando3 
Atlanta4 
Jacksonville5 
San Francisco6 
Miami7 
Augusta8 
San diego9 
5 REPLIES 5
Jihwan_Kim
Super User
Super User

Hi,

I am not sure if I understood your question correctly, but please check the below picture and the attached pbix file.

 

Jihwan_Kim_0-1673374046377.png

 

 

Rank measure: =
SWITCH (
    TRUE (),
    ISINSCOPE ( Data[City] ), RANKX ( ALL ( Data[City] ), CALCULATE ( SUM ( Data[Sales] ) ) ),
    ISINSCOPE ( Data[State] ), RANKX ( ALL ( Data[State] ), CALCULATE ( SUM ( Data[Sales] ) ) )
)

If this post helps, then please consider accepting it as the solution to help other members find it faster, and give a big thumbs up.


Go to My LinkedIn Page


Thank you. 

I was looking to do that within 1 Matrix style table, not in 2 separate tables....I believe it is called "ranking by multiply hierarchy levels" in a table.

 

I believe you have to use VAR in your DAX in combination with something like this: RANKX(ALLSELECTED(table [State]), calculate(sum[sales]).

 

Please let me know if you know the solution.

 

Regards.

 

 

 

 

 

Hi,

Thank you for your feedback.

Please check the below picture and the attached pbix file whether one of two visualizations is what you are looking for.

 

Jihwan_Kim_0-1673375534232.png

 

If this post helps, then please consider accepting it as the solution to help other members find it faster, and give a big thumbs up.


Go to My LinkedIn Page


Hi again,

 

The sample you provided works perfectly, but it doesn't work with my data.

Could it be because the location (state and city) are in a separate table I joined with the sales table ?

 

Regards

Hi,

Thank you for your message.

I assume your data model looks something like below.

If my assumption is wrong, please provide your sample pbix file's link.

 

Please check the below picture and the attached pbix file whether it suits your requirement.

 

Jihwan_Kim_0-1673409935360.png

 

Jihwan_Kim_1-1673410255266.png

 

If this post helps, then please consider accepting it as the solution to help other members find it faster, and give a big thumbs up.


Go to My LinkedIn Page


Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.