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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
jeanL
Frequent Visitor

RANKX with filter

I am trying to display only top 10 in the table and have been looking up to try using TOPN and RANKX.

But i have been having issue with rankx, with it displaying 1 rank across the table.

The table is expected to be filtered by three criteria, 

1. main_service

2. direction 

3. customer_segment

 

I have tried using adding columns and it gives me the ranks throughout the entire table. But i am looking for a dynamic ranking where it will be ranked as the filter is applied. 

rank = RANKX(ALLSELECTED(summary_table), [total_teus],,0)

 

 

rank is using new column with the above code, while rankings, i have been trying with code below. 

rankings = CALCULATE(
    RANKX(ALLSELECTED(summary_table[od_pairs]), SUM([total_teus]),,0))

 

 

 

snippet.PNG

 

2 ACCEPTED SOLUTIONS
amitchandak
Super User
Super User

@jeanL , Try TOPN like

CALCULATE([total_teus], TOPN(10,ALLSELECTED(summary_table[od_pairs]),[total_teus],dense), ALLSELECTED(summary_table[od_pairs]))

View solution in original post

CNENFRNL
Community Champion
Community Champion

rankings =
RANKX(
    ALLSELECTED( summary_table[od_pairs] ),
    CALCULATE( SUM( [total_teus] ) )
)

Thanks to the great efforts by MS engineers to simplify syntax of DAX! Most beginners are SUCCESSFULLY MISLED to think that they could easily master DAX; but it turns out that the intricacy of the most frequently used RANKX() is still way beyond their comprehension!

DAX is simple, but NOT EASY!

View solution in original post

3 REPLIES 3
jeanL
Frequent Visitor

@CNENFRNL @amitchandak  Thank you! both worked perfectly! 

CNENFRNL
Community Champion
Community Champion

rankings =
RANKX(
    ALLSELECTED( summary_table[od_pairs] ),
    CALCULATE( SUM( [total_teus] ) )
)

Thanks to the great efforts by MS engineers to simplify syntax of DAX! Most beginners are SUCCESSFULLY MISLED to think that they could easily master DAX; but it turns out that the intricacy of the most frequently used RANKX() is still way beyond their comprehension!

DAX is simple, but NOT EASY!

amitchandak
Super User
Super User

@jeanL , Try TOPN like

CALCULATE([total_teus], TOPN(10,ALLSELECTED(summary_table[od_pairs]),[total_teus],dense), ALLSELECTED(summary_table[od_pairs]))

Helpful resources

Announcements
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.