Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! It's time to submit your entry. Live now!
Hey,
Looking for some query optimization tips. I am having query as below, which is performing in around 3000ms (979 FE, 1766 SE).
How would you guys change this query in order to get better report response time :)?
MEASURE [%] =
IF (
(
SUM ( Number )
/ ( DISTINCTCOUNT ( Date ) * 5 )
) > 1,
1,
SUM ( Number )
/ ( DISTINCTCOUNT ( Date ) * 5 )
)
Thanks in advance!
Solved! Go to Solution.
@Anonymous Since the same code is used in 2 places you can store the code in a variable.
VAR Calc =
DIVIDE ( [Measure], DISTINCTCOUNT ( Dates[Date] ) * 5 )
RETURN
IF ( Calc > 1, 1, Calc )
Weird notations SUM( NUMBER ), DISTINCTCOUNT( Date ); whatever,
= MIN( 1, SUM ( Number ) / ( DISTINCTCOUNT ( Date ) * 5 ) )
| Thanks to the great efforts by MS engineers to simplify syntax of DAX! Most beginners are SUCCESSFULLY MISLED to think that they could easily master DAX; but it turns out that the intricacy of the most frequently used RANKX() is still way beyond their comprehension! |
DAX is simple, but NOT EASY! |
@Anonymous Since the same code is used in 2 places you can store the code in a variable.
VAR Calc =
DIVIDE ( [Measure], DISTINCTCOUNT ( Dates[Date] ) * 5 )
RETURN
IF ( Calc > 1, 1, Calc )
| User | Count |
|---|---|
| 6 | |
| 5 | |
| 4 | |
| 4 | |
| 3 |
| User | Count |
|---|---|
| 16 | |
| 13 | |
| 9 | |
| 8 | |
| 7 |