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

Compete to become Power BI Data Viz World Champion! First round ends August 18th. Get started.

Reply
niveekiwi
Helper II
Helper II

Optimize MAXX

How can I find the maximum of previous rows with rescpect to the current row? currently I get a memory error when I run this DAX. 

 

maxbi:= MAXX(
FILTER( Allexcept('TI'; 'TI'[Assignment group]; 'TI'[Type]); [date] <= MAX([date])); 'TI'[Stock])

7 REPLIES 7
harshnathani
Community Champion
Community Champion

Hi @niveekiwi ,

 

Try this measure

 

maxbi =
VAR md =
    MAX ( 'TI'[Date] )
RETURN
    CALCULATE (
        MAX ( 'TI'[Date] ),
        FILTER (
            ALL ( 'TI' ),
            'TI'[Assignment group]
                = MAX ( 'TI'[Assignment group] )
                && 'TI'[Date] < md
        )
    )

 

 

Regards,

Harsh Nathani

lbendlin
Super User
Super User

Put the max(date) in a variable to compute it only once

 

maxbi:= 
var md = MAX([date])
return MAXX(
    FILTER( Allexcept('TI'; 'TI'[Assignment group]; 'TI'[Type])
           ; [date] <= md )
; 'TI'[Stock])

yes, that filter is still there. But now you only compute the upper limit once, instead of for every row.

Thanks for the input. That did not help. I have over 3 million rows. This formula iterates previous rows to find the maximum value of the measure. Is there another way to formulate?

3M is not a big number, can share your file?

I cannot share the data set as it is confidential. can it be because I refer TI[stock] as a measure?

I mean by that to calculate dates previous to the selected row date.

Helpful resources

Announcements
August Power BI Update Carousel

Power BI Monthly Update - August 2025

Check out the August 2025 Power BI update to learn about new features.

August 2025 community update carousel

Fabric Community Update - August 2025

Find out what's new and trending in the Fabric community.