This documentation is archived and is not being maintained.
DAX Query Syntax Reference
SQL Server 2012
DAX queries allow the user to retrieve data defined by a table expression from the xVelocity in-memory analytics engine (VertiPaq). The user can create measures as part of the query; these measures exist only for the duration of the query.
An optional clause of the query statement that allows the user to define measures for the duration of the query. Definitions can reference other definitions that appear before or after the current definition.
The name of an existing table using standard DAX syntax. It cannot be an expression.
The name of a new measure. It cannot be an expression.
Any DAX expression that returns a single scalar value.
Contains the table expression that generates the results of the query. The expression can use any of the defined measures.
The expression must return a table. If a scalar value is required, the person authoring the measure can wrap their scalar inside a ROW() function to produce a table that contains the required scalar.
ORDER BY clause
Optional clause that defines the expression(s) used to sort the query results. Any expression that can be evaluated for each row of the result is valid.
START AT sub-clause
Optional clause, inside an ORDER BY clause, that defines the values at which the query results will start. The START AT clause is part of the ORDER BY clause and cannot be used outside it.
In an ordered set of results, the START AT clause defines the starting row for the result set.
The START AT arguments have a one to one correspondence with the columns in the ORDER BY clause; there can be as many arguments in the START AT clause as there are in the ORDER BY clause, but not more. The first argument in the START AT defines the starting value in column 1 of the ORDER BY columns. The second argument in the START AT defines the starting value in column 2 of the ORDER BY columns within the rows that meet the first value for column 1.