For more details about the functions used in this recipe, refer to the following links:
- DISTINCT: https://docs.microsoft.com/en-us/dax/distinct-function-dax
- SELECTCOLUMNS: https://docs.microsoft.com/en-us/dax/selectcolumns-function-dax
- FILTER: https://docs.microsoft.com/en-us/dax/filter-function-dax
- CONCATENATEX: https://docs.microsoft.com/en-us/dax/concatenatex-function-dax
- ALL: https://docs.microsoft.com/en-us/dax/all-function-dax
- UNION: https://docs.microsoft.com/en-us/dax/union-function-dax
- INTERSECT: https://docs.microsoft.com/en-us/dax/intersect-function-dax
- COUNTROWS: https://docs.microsoft.com/en-us/dax/countrows-function-dax
- MAX: https://docs.microsoft.com/en-us/dax/max-function-dax
- IF: https://docs.microsoft.com/en-us/dax/if-function-dax
- ISBLANK: https://docs.microsoft.com/en-us/dax/isblank-function-dax
- CALCULATETABLE: https://docs.microsoft.com/en-us/dax/calculatetable-function-dax
- ALLEXCEPT: https://docs.microsoft.com/en-us/dax/allexcept-function-dax