In DAX, iterators are functions that evaluate an expression for every row of a table and then aggregate the result. These functions are called iterators because the functions iterate over each row of a table. Within DAX, iterator functions end with an X character and include the following functions:
- AVERAGEX
- COUNTAX
- COUNTX
- GEOMEANX
- MAXX
- MEDIANX
- MINX
- PRODUCTX
- STDEVX.P
- STDEVX.S
- SUMX
- VARX.P
- VARX.S
Each of these iterator functions performs exactly the same calculation as their non-X equivalent aggregation functions, except that the X functions perform their aggregation over a table specified as the first parameter of the function.
All of these iterator functions have the following general form:
<function>(<table>, <expression>)
Here, <function> is the name of the iterator function. Each iterator function takes a table as its first parameter as well as a DAX expression as its second parameter. The expression is evaluated for each row of the table and then the aggregation function aggregates the results of each of those evaluations.