The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
Dear Team,
In DAX calculation, I found one weird case, just wanted to filter the data on some condition.
Here is the DAX that was written -
CALCULATE(SUM(FactTotal[Sales]), FILTER(FactTotal, FactTotal[Key] = 1))
It was returning incorrect data.
But when I changed this to different DAX without FILTER word -
CALCULATE(SUM(FactTotal[Sales]), FactTotal[Key] = 1)
It works fine.
Could anyone please suggest, what went wrong with the first statement.
Thanks,
Solved! Go to Solution.
It's the way DAX works internally. Your second function:
CALCULATE(SUM(FactTotal[Sales]), FactTotal[Key] = 1) is really CALCULATE( SUM( FactTotal[Sales]), FILTER( ALL(FactTotal), FactTotal[Key] = 1 ) )
so all removes the current filters and applies you FactTotal[Key] = 1 filter.
It's the way DAX works internally. Your second function:
CALCULATE(SUM(FactTotal[Sales]), FactTotal[Key] = 1) is really CALCULATE( SUM( FactTotal[Sales]), FILTER( ALL(FactTotal), FactTotal[Key] = 1 ) )
so all removes the current filters and applies you FactTotal[Key] = 1 filter.