Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more.
Get startedGrow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.
I'm new to DAX. Kindly help me on this.
If i use zero for else statement, I'm getting error as insufficient memory.
I want to make the below dax faster and total to be visible.
DAX =
IF (
SUM ( Counter_flag ) = 1,
CALCULATE ( DISTINCTCOUNTNOBLANK ( ColumnName ),
KEEPFILTERS( 'table[Counter_flag] = 1 )
)
DAX =
VAR _t1 = SUM ( Counter_flag )
VAR _t2 = SUMX(DISTINCT( ColumnName ),1)
RETURN
IF (
_t1 = 1,
CALCULATE (_t2,
KEEPFILTERS( 'table[Counter_flag] = 1 )
)
You can probably re-write your DAX to not use the IF statement, by instead using a FILTER statement in your CALCULATE.
Like this:
CALCULATE(
DISTINTCOUNTNOBLANK([ColumnName]),
FILTER(
'table',
SUM('table'[Counter_flag]) = 1
)
)
This one is taking too long to load. (30 million rows are there)
you may try a combination of SUMX and CALCULATETABLE to acheive your goal and potentially improve performance.
SUMX (
CALCULATETABLE ( VALUES ( [Counter_flag] ), [Counter_flag] = 1 ),
SUM ( [Counter_flag] )
)
Hi @Keegan_Patton - Do you mean this ?
CALCULATE(
DISTINTCOUNTNOBLANK([ColumnName]),
SUMX (
CALCULATETABLE ( VALUES ( [Counter_flag] ), [Counter_flag] = 1 ),
SUM ( [Counter_flag] )
)
)
User | Count |
---|---|
83 | |
77 | |
70 | |
69 | |
54 |
User | Count |
---|---|
106 | |
96 | |
90 | |
79 | |
68 |