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

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.

Reply
zazaalaza
Frequent Visitor

DAX too Slow with Filtering

Hi,

I have the following measure:

Measure = 
    CALCULATE ( 
        COUNT ( 'Table'[Value] ), 
        FILTER ( 
            ALL ( 'Table' ), 
            'Table'[ValidFromDate] < MAX ( 'Date'[Date] ) && 
            'Table'[ValidToDate] > MAX ( 'Date'[Date] ) 
        ) 
    )


The two tables (Table, Date) are not connected.

I use this to see "Active" contracts on a specific date. However when I place it in a visual to see it on a daily basis (last 12 months for example), it is way too slow (I have 12 million rows). 

Is there a way to optimize this?
Much appreciated!

4 REPLIES 4
zazaalaza
Frequent Visitor

Perhaps there is a way to make it faster without using Calculate? @Greg_Deckler Any ideas? 

Yeah, I have seen this pattern be slow occasionally.

Without CALCULATE can be written fairly similarly.

Measure =
VAR _MaxDate = MAX ( 'Date'[Date] )
RETURN
    COUNTROWS (
        FILTER (
            ALL ( 'Table' ),
            'Table'[ValidFromDate] < _MaxDate &&
            'Table'[ValidToDate]   > _MaxDate
        )
    )
AlexisOlson
Super User
Super User

It might help to make the max date a variable.

Measure =
VAR _MaxDate = MAX ( 'Date'[Date] )
RETURN
    CALCULATE (
        COUNT ( 'Table'[Value] ),
        ALL ( 'Table' ),
        'Table'[ValidFromDate] < _MaxDate,
        'Table'[ValidToDate] > _MaxDate
    )

Thanks but that doesn't help.

Helpful resources

Announcements
July 2025 community update carousel

Fabric Community Update - July 2025

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

July PBI25 Carousel

Power BI Monthly Update - July 2025

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