Writing a DAX query using TOPN

  Рет қаралды 35,219

SQLBI

SQLBI

Күн бұрын

Пікірлер: 91
@Drivenbyfate1
@Drivenbyfate1 4 жыл бұрын
One of the best videos he has ever made, coming from a DAX Grand Master. A true pleasure to watch, I could watch these all day.
@MrAszpic
@MrAszpic 4 жыл бұрын
This video is the answer of thousands of questions on the official Power BI Community. Thanks a lot for sharing!
@Mrglasshalfempty
@Mrglasshalfempty 4 жыл бұрын
This is extremely helpful not just because "RANKX" but even more to see the step-by-step iterative approach you use in developing a complex DAX expression. I easily get intimidated by seeing the final DAX expression and then enjoy some time to reverse-engineer. But here, the simple-to-complex evolution of the expression is revealed and a great help. Thanks for providing this -- your books and videos have changed my professional life a huge amount and I always enjoy everything you and Marco put out for us!
@eldrigeampong8573
@eldrigeampong8573 9 ай бұрын
Thanks a lot for continuously sharing your immense knowledge with the BI community
@HachiAdachi
@HachiAdachi 4 жыл бұрын
Truly masterful. I learned not only specific DAX techniques but also (and more importantly) how to generally approach more complex problems methodically. Thank you, Alberto!
@CJ-jc8tn
@CJ-jc8tn 4 жыл бұрын
Wow! That's 9 DAX functions explained in one solution. Thank you for sharing this brilliant approach to writing a complex solution piece by piece in Dax Studio. That incremental approach to solving the problem was most educational and I look forward to many more fantastic videos from yourself and Marco.
@sasikr
@sasikr 2 жыл бұрын
Thank u so much. BI community is indebted to you
@lilychiao70
@lilychiao70 4 жыл бұрын
Oh, my god, I just realized who you are! So glad to watch these excellent videos. Thanks.
@zeisslaimen1
@zeisslaimen1 4 жыл бұрын
OMG Alberto you are truly a DAX Ferrari:) fantastic!
@yiubili1
@yiubili1 3 жыл бұрын
Amazing video, i am happy that youtube recommended this to me.
@alt-enter237
@alt-enter237 4 жыл бұрын
So totally agree with the 'break it down step by step' approach. Honestly, it's the only way I can even hope to tackle a complex DAX expression. (And believe me, my use of the word "complex" here is relative!)
@fernandotorres4463
@fernandotorres4463 4 жыл бұрын
Amazing video, in just 15 minutes I learned a lot. Until now I have used GENERATE just for make some joins, I was not aware that the second table is evaluated in the context of the row of the first table.
@2404Pepe
@2404Pepe 3 жыл бұрын
Third time I watch this video and finally got it !!!! thanks so so much for your dedication Alberto!!!
@smartdata678
@smartdata678 4 жыл бұрын
I love the way you explain the topic!!! Greetings from Poland. :)
@EricaDyson
@EricaDyson 4 жыл бұрын
Wonderful. Your explanations are so clear and it seems so simple when YOU do it! Thanks so much.
@emilyamalkin4367
@emilyamalkin4367 2 жыл бұрын
I love it! Can’t wait to try it! Thank you thank you thank you. I’m coming from the Oracle SQL world so all of this is very familiar to me and easy to implement in sql, but I had no clue of to write it in dax! You made it easy. ❤️
@avsthoughts-aneeshvs4422
@avsthoughts-aneeshvs4422 4 жыл бұрын
Clear step by step approach explained in a simple way.....👍👍👍
@3danim8r1
@3danim8r1 2 жыл бұрын
Just WOW...you are outstanding Sir. Thank you so much for sharing.
@Chris_in_fremantle
@Chris_in_fremantle 2 жыл бұрын
A masterful demonstration.
@jimayas
@jimayas 4 жыл бұрын
Stellar stuff Alberto! Thank you for sharing your knowledge!
@sue_bayes
@sue_bayes 4 жыл бұрын
Loved watching the way you solved the problem step by step and kept in the clip the way you fixed the errors because it showed the problem solving approach. Learnt a lot and was able to use in my own model in Power BI, how do you keep the order by step though?
@davidbrown2204
@davidbrown2204 4 жыл бұрын
Simply superb, well done Alberto.
@michaeldiluzio1944
@michaeldiluzio1944 3 жыл бұрын
Amazing video to watch, thank you!
@StoneZhong
@StoneZhong 4 жыл бұрын
Good video, I would like to figure that with Spark SQL's Window function, we can get things done as well.
@jaikumardaiya4503
@jaikumardaiya4503 4 жыл бұрын
Great DAX Video i have ever watched.
@pedrosanteloy
@pedrosanteloy 4 жыл бұрын
Amazing! Really really useful! Thanks for sharing this content.
@pawewrona9749
@pawewrona9749 4 жыл бұрын
Some time ago I was building similar thing. I did it, but not in such elegant way like yours. It has a great use in Pareto chart, to group the tail nicely. The only problem I have with this is that this is still the table, which is refreshed with dataset. It doesn't react on filtering to be calculated "on the fly". I used a report built with Qlik, it seems that they have a solution to this problem. If, by any chance, it exists also in Power BI, I'd love to see it. Thank you for very good video!
@SQLBI
@SQLBI 4 жыл бұрын
Power BI does not have a specific feature for this scenario, we provided a workaround in this article: www.sqlbi.com/articles/showing-the-top-5-products-and-others-row/
@natibelay6157
@natibelay6157 3 жыл бұрын
Perfect example.
@ringovski1980
@ringovski1980 4 жыл бұрын
Great video, very clearly explained.
@obazeeghosa
@obazeeghosa 4 жыл бұрын
Fantastic!!! It is building from DAX 101 to DAX 401. Gradual build to epic. I am finding it difficult replicating it in Power BI. i would appreciate any assistance with work around in Power BI
@georgekaroubas6136
@georgekaroubas6136 4 жыл бұрын
Excellent presentation. Thank you
@Milhouse77BS
@Milhouse77BS 4 жыл бұрын
Wow! Next level DAX.
@lokesh2635
@lokesh2635 4 жыл бұрын
I may take my entire life to write dis kind of codes 😅😃😃
@PeterKontogeorgis
@PeterKontogeorgis 4 жыл бұрын
This is brilliant content. As others have said aside from the useful business problem you have solved, watching you go through the process is invaluable. Is it correct to say the only way this result set can be displayed is via a calculated table? Would this be the main use case of a dax calculation like this?
@SQLBI
@SQLBI 4 жыл бұрын
Yes, for a calculated table or for a paginated report. However, if you are interested there is an example based on measures producing a report in Power BI in this article: www.sqlbi.com/articles/showing-the-top-5-products-and-others-row/
@markusleucht6603
@markusleucht6603 2 жыл бұрын
Excellent!
@jayeshsuthar9198
@jayeshsuthar9198 3 жыл бұрын
Great example
@BoyClassicall
@BoyClassicall 4 жыл бұрын
Code clean as a whistle .
@venkataramanareddybareddy7077
@venkataramanareddybareddy7077 4 жыл бұрын
Excellent video to create top products along with other other product information in the other row. Amazing😍😍.But how can we create same expression in measure. Is there a way to create a measure?
@SQLBI
@SQLBI 3 жыл бұрын
Use this: www.sqlbi.com/articles/filtering-the-top-products-alongside-the-other-products-in-power-bi/
@dariuszspiewak5624
@dariuszspiewak5624 4 жыл бұрын
Hi Alberto. Thanks for this great material. One question I'd have... If I want to return the result but without the auxiliary column that enables me to obtain the correct sorting order, would I have to wrap this result in SELECTCOLUMNS? Would that be enough to keep the sorting order? Thanks.
@SQLBI
@SQLBI 4 жыл бұрын
The column used for the sort order must be part of the query (SQL is different on this regard). A workaround for a limited number of rows is using hidden characters like in this article: www.sqlbi.com/articles/handling-customers-with-the-same-name-in-power-bi/ But you can hardly get this working with large datasets.
@dariuszspiewak5624
@dariuszspiewak5624 4 жыл бұрын
@@SQLBI Thanks for the quick reply. Do you think it would be hard for M$ to implement the possibility of returning a sorted set without the sorting column?
@SQLBI
@SQLBI 4 жыл бұрын
I think they don't have a compelling reason to do that - you should ask it first, and when they receive enough requests they could evaluate that.
@blaisehara8337
@blaisehara8337 3 жыл бұрын
Could you demonstrate how this example would be transferred to Power BI? I'm not familiar with DaxStudio and am not quite sure how you'd build this with measures, etc. in Power BI.
@SQLBI
@SQLBI 3 жыл бұрын
See this article+video: www.sqlbi.com/articles/filtering-the-top-products-alongside-the-other-products-in-power-bi/
@Taastrupbaby
@Taastrupbaby 4 жыл бұрын
This is nice. How would you implement this in a Power BI model?
@SQLBI
@SQLBI 4 жыл бұрын
We published an example in this article: www.sqlbi.com/articles/showing-the-top-5-products-and-others-row/
@sue_bayes
@sue_bayes 4 жыл бұрын
Copy from Generate down to the final ) after Result and paste into BI as a calculated table, not sure how you add in the order by bit though
@rick_.
@rick_. 4 жыл бұрын
Hi Alberto! Can you point us to a web page or video that explains how SUMMARIZE works? All of the ones I find just show the depricated version that addes named expressions. I can't find anythat explains what is returned using just TABLE and GROUPBY. Does it just sum up the other columns? Concatenate strings? What about dates? Thank you!
@SQLBI
@SQLBI 4 жыл бұрын
Read these articles (just use the first part of SUMMARIZE without the aggregated columns): www.sqlbi.com/articles/best-practices-using-summarize-and-addcolumns/?aff=yt www.sqlbi.com/articles/all-the-secrets-of-summarize/?aff=yt
@mwaltercpa
@mwaltercpa 4 жыл бұрын
Very helpful. Thank you!
@Bharath_PBI
@Bharath_PBI 4 жыл бұрын
That's awesome. I had such scenario in my previous project and have done exactly same but in ssas tabular. However, didn't had to see within each year (or any other column). It was simple to only calculate top 10 countries with others row. But was quite challenging to incorporate the external filters. I hadn't used generate function. Good to know and appreciate some such scenarios. Request for a video on handling different granularity and working with multiple currencies. Thank you very much. Enjoying DAX 👍
@nagendrakg5062
@nagendrakg5062 4 жыл бұрын
Real DAX masters. Thanks for the efforts. One question is, can't we able to write it without Dax studio. If want to write the same thing in measure that also works fine correct. Is my understanding is correct
@SQLBI
@SQLBI 4 жыл бұрын
The video shows how to create a table expression, you can use the same expression after EVALUATE in a calculated table.
@RandomlyWisdom
@RandomlyWisdom 2 жыл бұрын
How many years I will need to become an expert like Alberto?
@chilliyou
@chilliyou 4 жыл бұрын
Need your input if you want to get 3 topn from a list where values are similar. Like 100,10,10,10 as for me it is return 4 values instead of 3.
@SQLBI
@SQLBI 4 жыл бұрын
You must add some other element in the sort order - unfortunately TOPN only gets one measure, so you have to figure out an algorithm that uses a second column to make a final sort order (which could be hard, we know).
@diegoj9056
@diegoj9056 4 жыл бұрын
Great video, thanks
@ITSNev
@ITSNev 4 жыл бұрын
Thanks, very good...
@andreibulatov2395
@andreibulatov2395 4 жыл бұрын
Awesome!
@DanielADamico
@DanielADamico 4 жыл бұрын
Brilliant!
@Infolakeperu
@Infolakeperu 4 жыл бұрын
extraordinary!
@amarines2
@amarines2 4 жыл бұрын
Execelente explicación
@HarishS12137
@HarishS12137 4 жыл бұрын
How do I become good at Dax? This is so inspiring...
@vladsamoilov9905
@vladsamoilov9905 4 жыл бұрын
Read Alberto and Marco's books, watch videos and takes their courses. Best investment you can make
@yazanhlayel6983
@yazanhlayel6983 4 жыл бұрын
This might sound like a very stupid question, but where do we use such a query if a measure can't return a table ? The only use I can see for this is to create a table and that wouldn't really make it interactive to other filters. I'd appreciate if someone explains use-cases of such a query or how we can insert it into a table visualization.
@SQLBI
@SQLBI 4 жыл бұрын
We have an article describing that use case: www.sqlbi.com/articles/showing-the-top-5-products-and-others-row/ We will also publish a newer article and video later with a better technique (not ready yet). The technique shown in this video serves two purposes: 1) Create a report in other environments, such as Paginated Reports and Excel (you can dump the result of a DAX query in an Excel table). 2) Provide a longer example about how to write DAX code, dividing a problem in smaller simpler steps that are easier to write and test.
@chandrapamidikalva3277
@chandrapamidikalva3277 4 жыл бұрын
Hi I have a query for you I have five tables in my data model if I change the existing relation using userelationship function on one connection, How can I get the child data from the other tables using the new connection? It is an interview question
@picious
@picious 4 жыл бұрын
Aways Amazing !!!
@Gustavofuentesm
@Gustavofuentesm 4 жыл бұрын
brilliant!
@ph3ll3r
@ph3ll3r 4 жыл бұрын
This was great article. I was wondering why you used the @ColumnName for the column name since it also could used as a parameter. Are there any newer articles that demonstrates how to use it as a parameter that parallels the use of parameters in SQL Server. (www.sqlbi.com/blog/marco/2012/01/05/use-parameters-in-your-dax-queries/) is the latest article that I could find.
@SQLBI
@SQLBI 4 жыл бұрын
The @parameter syntax is not a parameter if used as column name, such as [@ColumnName]. For example, in this code only @Limit and @Name are parameters: EVALUATE FILTER ( CALCULATETABLE ( SELECTCOLUMNS ( 'Product', "@Name", 'Product'[Product Name] ), 'Product'[Color] = @ColorName ), [@Name] > @Limit ) However, it is clear that in a query where you have both parameters and temporary columns, you should evaluate a different naming convention for the column names. The reasons why [@ColumnName] could be a good naming convention (when you don't have parameters) is described here: www.sqlbi.com/articles/naming-temporary-columns-in-dax/
@vittoriogiatti
@vittoriogiatti 4 жыл бұрын
can somebody please explain me how to sort by multiple columns in PBI Desktop as made by the last code line? - If we are in the situation where we have the same product for different @POS values, this can't be done just by using "sort by column" command. - this only if we don't wanna use @POS into our matrix/table, and if we can't use the index column of power query. Thanks
@SQLBI
@SQLBI 4 жыл бұрын
see these: www.sqlbi.com/articles/handling-customers-with-the-same-name-in-power-bi/ www.sqlbi.com/articles/sorting-duplicated-names-in-a-level-of-a-hierarchy-with-dax/
@vittoriogiatti
@vittoriogiatti 4 жыл бұрын
@@SQLBI exactly what I needed. Thanks. Regards
@diegomex85
@diegomex85 4 жыл бұрын
awesome
@hyS-n5m
@hyS-n5m 4 жыл бұрын
too good
@ed2921
@ed2921 4 жыл бұрын
Champion
@David-kf8qo
@David-kf8qo 2 жыл бұрын
I haven't managed a single example from your tutorials so far, when I aggregate according to my turnover I get an error message that (that there is no match) with the other example at Summarize I couldn't even type it out 1:1. Your examples are too worthless or not complex enough. Maybe you could explain what kind of data you are using and what kind of error handling would be possible.
@joaquimcosta952
@joaquimcosta952 4 жыл бұрын
Uau....what is this?????.....amazing!!!!!
@danjarupath
@danjarupath 4 жыл бұрын
Cool
@IoriYagamiKOF98
@IoriYagamiKOF98 4 жыл бұрын
if you have only 2 products in 2009 the rank will show 1,2,4 (for others) wich would look weird :P (i know it's a Big what if only for educational purpose ... :) :D )
@SQLBI
@SQLBI 4 жыл бұрын
Good point!
@robertalavezzari6970
@robertalavezzari6970 2 жыл бұрын
a volte, presa dall'esaperazione, non so se benedirvi o maledirvi........................
@Rrabbit_swim
@Rrabbit_swim 4 жыл бұрын
Thought I knew DAX. Now I see... I know nothing at all
Best practices for using KEEPFILTERS in DAX
28:24
SQLBI
Рет қаралды 14 М.
УЛИЧНЫЕ МУЗЫКАНТЫ В СОЧИ 🤘🏻
0:33
РОК ЗАВОД
Рет қаралды 7 МЛН
Ozoda - Alamlar (Official Video 2023)
6:22
Ozoda Official
Рет қаралды 10 МЛН
-5+3은 뭔가요? 📚 #shorts
0:19
5 분 Tricks
Рет қаралды 13 МЛН
Какой я клей? | CLEX #shorts
0:59
CLEX
Рет қаралды 1,9 МЛН
Lookup multiple values in DAX
22:10
SQLBI
Рет қаралды 54 М.
Using OR conditions between slicers in DAX
22:43
SQLBI
Рет қаралды 32 М.
TopN CONFUSION in Power BI | When the Top3 DOESN'T return 3 items
16:55
DAX Fridays Battle #187: RANKX vs TOPN
8:14
Curbal
Рет қаралды 34 М.
Variables in DAX
17:08
Goodly
Рет қаралды 47 М.
Working below a DAX formula’s granularity
15:16
SQLBI
Рет қаралды 20 М.
Propagating filters using TREATAS in DAX
19:18
SQLBI
Рет қаралды 47 М.
Introducing RANK window function in DAX
15:24
SQLBI
Рет қаралды 30 М.
УЛИЧНЫЕ МУЗЫКАНТЫ В СОЧИ 🤘🏻
0:33
РОК ЗАВОД
Рет қаралды 7 МЛН