Forum Discussion
Yadidya
2 years agoRegular Visitor
How to select a single record for each year based on maximum vaue
Hi Using Summarize, I created a table that has the year, name & point columns. Table = SUMMARIZE(constructor_results, races[year], constructors[name], "Total Points", SUM(constructor_results[poin...
- 2 years ago
To achieve this in Power BI using DAX, you can modify your existing
SUMMARIZEfunction to include a ranking based on the points, and then filter the table to only include the top record per year. Here’s how you can do it:Table = VAR SummaryTable = SUMMARIZE( constructor_results, races[year], constructors[name], "Total Points", SUM(constructor_results[points]) ) VAR RankedTable = ADDCOLUMNS( SummaryTable, "Rank", RANKX(FILTER(SummaryTable, [year] = EARLIER([year])), [Total Points], , DESC, Dense) ) RETURN FILTER( RankedTable, [Rank] = 1 )
amustafa
Solution Sage
2 years agoTo achieve this in Power BI using DAX, you can modify your existing SUMMARIZE function to include a ranking based on the points, and then filter the table to only include the top record per year. Here’s how you can do it:
Table =
VAR SummaryTable = SUMMARIZE(
constructor_results,
races[year],
constructors[name],
"Total Points", SUM(constructor_results[points])
)
VAR RankedTable = ADDCOLUMNS(
SummaryTable,
"Rank", RANKX(FILTER(SummaryTable, [year] = EARLIER([year])), [Total Points], , DESC, Dense)
)
RETURN
FILTER(
RankedTable,
[Rank] = 1
)