Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
7 years ago
Solved

CALCULATE with FILTER performance issue

I need help understanding the impact of one DAX measure verus the other.  I'm trying to do a distinct count of customers, but "Blank" values are also counted, so I want to exclude those with a filter. 

 

Initially I was using this DAX code: 

Customers (Count) :=
CALCULATE (
    DISTINCTCOUNT ( Fact_Table[Customer Key] ),
    FILTER (
        Fact_Table[Customer Key],
        ISBLANK ( Fact_Table[Customer Key] ) = FALSE
    )
)

But changed to this DAX code:

 

Customers (Count):=
CALCULATE (
    DISTINCTCOUNT ( Fact_Table[Customer Key] ),
     ISBLANK ( Fact_Table[Customer Key] ) = FALSE 
)

Using the FILTER was not performant at all when applying the measure to a table with thousands of records returned.  What gives? How is the first query different than the second? 

 

Thanks!