Reply
Frequent Visitor
Posts: 3
Registered: ‎10-27-2016

TopN filter returning more than N requested

I am using the TopN filter and when I do I do it returns more than the N i requested.  I used top 10 agents by conversion but it returned almost 30 agents.  Does conversioni= infinity or NaN have anything to with it?  If I take those out I still get more than ten agetns listed. All help is apprecitated.

 

 

Moderator
Posts: 2,588
Registered: ‎03-06-2016

Re: TopN filter returning more than N requested

@forrestcrowson

 

In DAX, when using TOPN() function, it returns top N rows based on the order_by_expression. However if the order_by_expression has same values, those rows will be retrieved. That's the reason why you get more than 10 agents.

 

Regards,

Highlighted
Super User
Posts: 1,183
Registered: ‎12-29-2015

Re: TopN filter returning more than N requested

It's giving you everyone that's tied for the same spot. I think that's what @v-sihou-msft is saying too but I'm not sure. Anyway topn returns the matches for the top n scores, not the first n matches it finds. So imagine you want the top 10 people, but 3 people are tied for number 1, 7 are tied for number 2, and there's only 1 each for 3rd place through 10th place. TOPN will give you 18 people, not 10. If you only want 10, you need to come up with a way to calculate a tie-breaker that will force each person to have a unique score.