Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

To celebrate FabCon Vienna, we are offering 50% off select exams. Ends October 3rd. Request your discount now.

Reply
RZAU
Frequent Visitor

Nested Iterators

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]

)

)averagex.PNG

1 ACCEPTED SOLUTION
Jihwan_Kim
Super User
Super User

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.

 

 


If this post helps, then please consider accepting it as the solution to help other members find it faster, and give a big thumbs up.


Click here to visit my LinkedIn page

Click here to schedule a short Teams meeting to discuss your question.

View solution in original post

1 REPLY 1
Jihwan_Kim
Super User
Super User

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.

 

 


If this post helps, then please consider accepting it as the solution to help other members find it faster, and give a big thumbs up.


Click here to visit my LinkedIn page

Click here to schedule a short Teams meeting to discuss your question.

Helpful resources

Announcements
September Power BI Update Carousel

Power BI Monthly Update - September 2025

Check out the September 2025 Power BI update to learn about new features.

Top Solution Authors
Top Kudoed Authors