Hello All,
I have a single column with 400K rows, which contain random numbers.
The following DAX formula calculates immediately, but the inverse (just negating the equals condition) results in an Out Of Memory Exception (after the calculation runs for several minutes). Can you reproduce it and how to solve it? Thanks.
test_filter_1 = COUNTROWS(
FILTER(
table_1,
table_1[column1] = EARLIER(rable_1[column1])
)
)
test_filter_1_negated =
COUNTROWS(
FILTER(
table_1,
NOT(table_1[column1] = EARLIER(rable_1[column1]))
)
)
I think the root of your problem is that you're using EARLIER to mean "previous row". That's what it sounds like it should do, but the name is deceptive. It really means something like, "in the previous context"
Returns the current value of the specified column in an outer evaluation pass of the mentioned column.
EARLIER is useful for nested calculations where you want to use a certain value as an input and produce calculations based on that input. In Microsoft Excel, you can do such calculations only within the context of the current row; however, in DAX you can store the value of the input and then make calculation using data from the entire table.
EARLIER is mostly used in the context of calculated columns.
EARLIER(<column>, <number>)
Help when you know. Ask when you don't!
Join us for a free, hands-on Microsoft workshop led by women trainers for women where you will learn how to build a Dashboard in a Day!