Top 50 DAX Functions
1. SUM: Calculate the sum of values in a column.
=SUM(Table[Column])
2. AVERAGE: Calculate the average of values in a column.
=AVERAGE(Table[Column])
3. COUNT: Count non-blank values in a column.
=COUNT(Table[Column])
4. COUNTA: Count non-blank values in a column, regardless of type.
=COUNTA(Table[Column])
5. COUNTROWS: Count the rows in a table.
=COUNTROWS(Table)
6. CALCULATE: Change the context of a calculation based on filters.
=CALCULATE(SUM(Table[Column]), Table[FilterColumn] = "Value")
7. FILTER: Create a table filtered by specific conditions.
=FILTER(Table, Table[Column] > 10)
8. ALL: Remove filtering from a column or table.
=ALL(Table[Column])
9. DISTINCT: Return distinct values from a column.
=DISTINCT(Table[Column])
10. RELATED: Bring a value from a related table.
=RELATED(Table[RelatedColumn])
11. LOOKUPVALUE: Retrieve a value from a table based on specific criteria.
=LOOKUPVALUE(Table[ResultColumn], Table[SearchColumn], "Value")
12. SUMX: Calculate the sum of an expression across rows of a table.
=SUMX(Table, Table[Column1] * Table[Column2])
13. AVERAGEX: Calculate the average of an expression across rows of a table.
=AVERAGEX(Table, Table[Column1] * Table[Column2])
14. MAX: Return the largest value in a column.
=MAX(Table[Column])
15. MIN: Return the smallest value in a column.
=MIN(Table[Column])
16. RANKX: Rank values within a group.
=RANKX(ALL(Table), Table[Column],, DESC)
17. DIVIDE: Perform division with error handling.
=DIVIDE(Table[Column1], Table[Column2], 0)
18. EARLIER: Use a previous row's value in calculations.
=CALCULATE(SUM(Table[Column]), Table[Column2] = EARLIER(Table[Column2]))
19. BLANK: Return a blank value.
=BLANK()
20. ISBLANK: Check if a cell is blank.
=ISBLANK(Table[Column])
21. AND: Check if multiple conditions are true.
=AND(Table[Column1] > 10, Table[Column2] < 20)
22. OR: Check if at least one condition is true.
=OR(Table[Column1] > 10, Table[Column2] < 20)
23. NOT: Reverse the result of a condition.
=NOT(Table[Column] > 10)
24. SWITCH: Select a value based on a set of conditions.
=SWITCH(Table[Column], 1, "One", 2, "Two", "Other")
25. IF: Test a condition.
=IF(Table[Column] > 10, "Yes", "No")
26. VALUES: Return unique values in a column, used in relationship calculations.
=VALUES(Table[Column])
27. UNION: Combine multiple tables.
=UNION(Table1, Table2)
28. INTERSECT: Find the common elements between tables.
=INTERSECT(Table1, Table2)
29. EXCEPT: Find the differences between tables.
=EXCEPT(Table1, Table2)
30. ADDCOLUMNS: Add a calculated column to a table.
=ADDCOLUMNS(Table, "NewColumn", Table[Column1] * Table[Column2])
31. SELECTCOLUMNS: Select specific columns from a table.
=SELECTCOLUMNS(Table, "NewColumnName", Table[Column])
32. CALENDAR: Create a date table.
=CALENDAR(Date(2023, 1, 1), Date(2023, 12, 31))
33. CALENDARAUTO: Create a date table based on data.
=CALENDARAUTO()
34. FORMAT: Format values (like dates or numbers).
=FORMAT(Table[DateColumn], "MM/DD/YYYY")
35. CONCATENATE: Combine text strings.
=CONCATENATE(Table[FirstName], Table[LastName])
36. CONCATENATEX: Combine text strings with a table function.
=CONCATENATEX(Table, Table[Column], ", ")
37. PATH: Create a hierarchy path.
=PATH(Table[ManagerID], Table[EmployeeID])
38. PATHLENGTH: Calculate the length of a hierarchy path.
=PATHLENGTH(PATH(Table[ManagerID], Table[EmployeeID]))
39. USERELATIONSHIP: Use a specific relationship in calculations.
=CALCULATE(SUM(Table[Column]), USERELATIONSHIP(Table[DateColumn], Dates[Date]))
40. TREATAS: Apply a filter from one table to another.
=TREATAS(VALUES(Table1[Column]), Table2[Column])
41. ISNUMBER: Check if a value is a number.
=ISNUMBER(Table[Column])
42. ISERROR: Check if a result contains an error.
=ISERROR(Table[Column])
43. HASONEVALUE: Check if there is only one value in a column.
=HASONEVALUE(Table[Column])
44. ALLSELECTED: Return all selected values, maintaining external filters.
=ALLSELECTED(Table[Column])
45. REMOVEFILTERS: Remove filters from a table or column.
=REMOVEFILTERS(Table[Column])
46. TOPN: Return the top N rows based on a specific order.
=TOPN(5, Table, Table[Sales], DESC)
47. VAR: Define temporary variables in calculations.
VAR TotalSales = SUM(Table[Sales])
RETURN TotalSales / 1000
48. SELECTEDVALUE: Return the selected value in a column, or a default value.
=SELECTEDVALUE(Table[Column], "Default")
49. SUMMARIZE: Create a summary table based on groupings.
=SUMMARIZE(Table, Table[Column], SUM(Table[Sales]))
50. DISTINCTCOUNT: Count unique values in a column.
=DISTINCTCOUNT(Table[Column])