Introducing RANK window function in DAX

Sdílet
Vložit
  • čas přidán 19. 06. 2023
  • RANK is a new DAX function to rank items based on multiple columns: discover how RANK works and its differences with RANKX.
    Article and download: sql.bi/801505?aff=yt
    How to learn DAX: www.sqlbi.com/guides/dax/?aff=yt
    The definitive guide to DAX: www.sqlbi.com/books/the-defin...
  • Věda a technologie

Komentáře • 33

  • @davidm00ris
    @davidm00ris Před 11 měsíci +5

    Alberto is by far the person I have learned the most from about DAX. Thanks for the great explanations!

  • @yoshiaaa100
    @yoshiaaa100 Před rokem +3

    The explanation as always easy to understand.👌

  • @tmaris
    @tmaris Před rokem +2

    Perfect, as always. Thank you!

  • @souravkajuri
    @souravkajuri Před rokem +1

    This is really useful. Thank You for all you are doing

  • @juanamarinzapata7357
    @juanamarinzapata7357 Před 9 měsíci +1

    Thank you! I solved my problem so easily with your video.

  • @patrickm7760
    @patrickm7760 Před 8 měsíci +1

    Very good explanation thanks

  • @JustRandomExplorer
    @JustRandomExplorer Před rokem +1

    FINALLY really usable rank function

  • @common_sense4753
    @common_sense4753 Před rokem +3

    Thanks, @Alberto @SQLBI !

  • @powrigan719
    @powrigan719 Před rokem +1

    Very useful, thanks 🙂

  • @mwaltercpa
    @mwaltercpa Před rokem +1

    Very practical! I’d much rather use this over RANKX. Thanks Alberto!!

  • @credencial7654
    @credencial7654 Před rokem +1

    Perfect and simple

  • @marelyruiz1321
    @marelyruiz1321 Před 3 měsíci +1

    You are awesome!

  • @autobase16
    @autobase16 Před rokem +1

    Awesome 👍👍👍

  • @williamarthur4801
    @williamarthur4801 Před rokem +1

    I wonder if they'll let us power pivot users have it, we still have to use IF ( hasonevalue, etc, instead of selected. vary thorough article, as always, accompanying this video.

  • @vklemtz
    @vklemtz Před rokem +1

    Hi, thanks for the video! I have a doubt if I want to rank based on a measure which is a multiplication of 2 measures. One is forecast for 3 months variance in quantity and the other is the variance in percentage (comparing snapshot from current to previous month). I have used rankx all selected with the ranking factor, which is the multiplication of these 2 measures. Even though my visual shows the correct values for variance, both in perc. and quantity, it does not rank correctly based on their multiplication. It gives me a sequence of 8,9,10,44, etc. Would you have any idea of what might be the issue, please? Thank you very much!

  • @kingcobra071
    @kingcobra071 Před 3 měsíci +1

    Thank you for the great tutorial.
    However, whenever I use it in my query, it says "Not Enogh Memory to complete this operation". Any suggestions would be highly appreciated. Thank you.

    • @SQLBI
      @SQLBI  Před 3 měsíci

      If the table you provide to RANK is big, it could happen: the table must be materialized to complete the operation.

  • @Bharath_PBI
    @Bharath_PBI Před rokem +1

    That's great, thank you. If RANK and RANKX are same in performance, except for use case, which would be preferred? X in the function name was an indicator for iterative functions (with few exceptions like FILTER etc.)

    • @LearnAtHomewithGulshan
      @LearnAtHomewithGulshan Před rokem

      Rank is user friendly.

    • @gregoryoliveira8358
      @gregoryoliveira8358 Před 11 měsíci

      I believe FILTER is a iterative function too, because it scanned all rows from the table parameter. And, if my mind is not becoming weak, I remember to listen our great SQLBI guys saying that it is an iterative function in their videos.

  • @Ultramarplogic
    @Ultramarplogic Před 11 měsíci +1

    This is great, I fixed my RANKX functions with this ones BUT I have an issue that when the value is 0 it's giving me rankings out the total number of users,
    Example, I only have 100 players to rank for and it's ranking players with 0 goals in the 500 and 1000s, what is wrong with my measure (below)?
    For the record I intent to rank the players in each level (1-4), that's why I'm using the Allexcept.
    Measure =
    RANK(
    DENSE,
    ALLEXCEPT (PLAYERS,PLAYERS[LEVEL]),
    ORDERBY([Total GOALS],
    DESC,
    PLAYERS[NAME],
    ASC ))

  • @lionels839
    @lionels839 Před 14 dny +1

    Alléluia !!

  • @richardostrea7842
    @richardostrea7842 Před rokem +1

    👏👏👏

  • @amandeepbasra8673
    @amandeepbasra8673 Před 11 měsíci

    Hi, how could we remove ranking for the months that we don't have sales. I have been trying to solve a similar problem but couldn't succeed

  • @fahmywaleed
    @fahmywaleed Před 5 měsíci +1

    Excellent content and explanation, one thing to improve if you can split the video into chapters so the viewer can skip back and forth in a convenient way. Thanks for the effort.

  • @kawaiigaming2537
    @kawaiigaming2537 Před 7 měsíci

    How can i use it on a card? As i select a filter it shows only 1.

  • @negares3971
    @negares3971 Před rokem +1

    Thanks for your complete explanation. Would you please help me to write DAX Rank for this one,
    I want something like this table:
    Total | Year | Rank
    300 | 2023 | 1
    280 | 2023 | 2
    250 | 2023 | 3
    400 | 2022 | 1
    360 | 2022 | 2
    230 | 2021 | 1
    Thanks A lot

    • @gregoryoliveira8358
      @gregoryoliveira8358 Před 11 měsíci

      Hi. This measure should help you:
      Medida = RANK(
      DENSE,
      ALL ( Tabela ),
      ORDERBY( Tabela[Total ], DESC),
      PARTITIONBY(Tabela[ Year ])
      )
      There is a video where they talk about the windows function. I was seeing it and remember your question.

  • @common_sense4753
    @common_sense4753 Před rokem

    Hi, @SQLBI @Alberto. What would happen if we were to use All or Values instead of Allselected as the first argument for Addcolumns. I'm just not sure why we use Allselected here.

    • @SQLBI
      @SQLBI  Před rokem +1

      ALLSELECTED restores the filters defined outside of the visual.

    • @common_sense4753
      @common_sense4753 Před rokem

      @@SQLBI Thanks so much! Yes, I did learn that indeed from your book, but I thought it was needed when I had a scenario where I explicitly wanted to preserve the external filters. Now, I see that it is a good practice to use it by default. Thanks, again.

    • @LearnAtHomewithGulshan
      @LearnAtHomewithGulshan Před rokem

      If you use ALL then your ranking will be fixed.