A DAX function like SUMX that steps through a table one row at a time, evaluating an expression in row context, and then aggregates what it gets.
Also called iterator function.
Read more: Microsoft Learn
In the Ultra Transcenders books
Each book explains Iterator in context, with comparison tables and the common traps.
Terms in this definition
- DAX
Short for Data Analysis Expressions, the formula language you write measures, calculated columns and row-level security rules in, within tabular semantic models in Power BI, Excel Power Pivot or Analysis Services.
- LIKE
Compares strings with a pattern that can contain the % and _ wildcards. Because it only understands character patterns, searching big volumes of text this way is much slower than using full-text search.
- SUMX
Iterates over each table row, evaluating an expression, then totals those results; text, logical values and blanks don't count.
- Event
Table in Log Analytics where entries from Windows event logs are kept.
- Row context
Exists automatically in calculated columns and inside iterators like SUMX, giving DAX a current row to work on. Filtering the model is left to filter context; a current row does not do that by itself.
Related terms
- AVERAGEX
Returns the mean of an expression after computing it once for each row in a table; if the table has no rows, this DAX iterator gives BLANK.
- CONCATENATEX
Builds one text string by computing an expression for every row of a table and stringing the results together. This DAX iterator can optionally take a separator and an order for sorting.
- COUNTAX
A DAX iterator that evaluates an expression across a table's rows and counts how many results are not blank, logical values included.
- GEOMEAN
A DAX statistical function giving the geometric mean of a column's numbers. Its iterator version, GEOMEANX, works out an expression row by row over a table and then does the same.
- RELATED
Fetches a column value from the lookup table, that is the one side of a many-to-one relationship, for whichever row is being evaluated. It therefore needs to run inside an iterator or a calculated column, where row context exists.