This is best Fabric, Power BI, SQL and AI community event. How do we know? The last event sold out! Save €200 with code FABCMTY200.
Register nowThe Fabric community is now in read-only for platform upgrade. Learn more
Hello there
I am very new to DAX. I just couldn't figure our the difference between below two codes. Why they produce different results?
Code 1:
Sales Amount= SUMX(Sales, Sales[Quantity]*Sales[Net Price]) // Calculate sales amount first
Avg Sales by Customer = AVERAGEX(Customer, [Sales Amount]) // then calculate average
Code 2: Combine them together
Avg Sales by Customer=
AVERAGEX(
Customer,
SUMX(
Sales,
Sales[Quantity]*Sales[Net Price]
)
)
Solved! Go to Solution.
Hi,
I think, if you write the second one like below,
Avg Sales by Customer =
AVERAGEX (
Customer,
CALCULATE ( SUMX ( Sales, Sales[Quantity] * Sales[Net Price] ) )
)
it will show the same result as the first one.
If the measure itself is referenced by another measures (like the first one), CALCULATE is auto-created in order to execute context transition.
Instead of referencing the measure itself, if you write the whole formula, CALCULATE has to be included in order to execute context transition.
I hope it helps.
Hi,
I think, if you write the second one like below,
Avg Sales by Customer =
AVERAGEX (
Customer,
CALCULATE ( SUMX ( Sales, Sales[Quantity] * Sales[Net Price] ) )
)
it will show the same result as the first one.
If the measure itself is referenced by another measures (like the first one), CALCULATE is auto-created in order to execute context transition.
Instead of referencing the measure itself, if you write the whole formula, CALCULATE has to be included in order to execute context transition.
I hope it helps.
Join us in Barcelona for FabCon and SQLCon, the Fabric, Power BI, SQL, and AI community event. Save €200 with code FABCMTY200.
| User | Count |
|---|---|
| 23 | |
| 22 | |
| 14 | |
| 14 | |
| 13 |
| User | Count |
|---|---|
| 47 | |
| 39 | |
| 24 | |
| 20 | |
| 20 |