DAX Function Guide

GENERATE
Empty image or helper icon

Sam McKay

CEO & Founder

How does the GENERATE work?
It returns a table with the Cartesian product between each row in table 1 and the table resulting from the assessment of table 2 in the context of the current row from table 1.
GENERATE Formula Syntax
GENERATE(<table1>, <table2>) 
How do you use the GENERATE?

All column names from table1 and table2 must be different or an error is returned.

Related Blog Posts

Loading

Considerations when using the GENERATE?

If the evaluation of table2 for the current row in table1 returns an empty table, then the result table will not contain the current row from table1. This is different than GENERATEALL() where the current row from table1 will be included in the results and columns corresponding to table2 will have null values for that row.

Related Video Tutorials

Loading

Formula examples using the GENERATE
GENERATE(
SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup])
,SUMMARIZE(ProductCategory
, [ProductCategoryName]
, "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])
)
)
Related Courses

Loading