MAX (Transact-SQL)
Returns the maximum value in the expression. May be followed by the OVER clause.
Transact-SQL Syntax Conventions
Syntax
MAX ( [ ALL | DISTINCT ] expression )
Arguments
- ALL
Applies the aggregate function to all values. ALL is the default.
- DISTINCT
Specifies that each unique value is considered. DISTINCT is not meaningful with MAX and is available for SQL-92 compatibility only.
expression
Is a constant, column name, or function, and any combination of arithmetic, bitwise, and string operators. MAX can be used with numeric, character, and datetime columns, but not with bit columns. Aggregate functions and subqueries are not permitted.For more information, see Expressions (Transact-SQL).
Return Types
Returns a value same as expression.
Important
Distinct aggregates, for example AVG(DISTINCT column_name), COUNT(DISTINCT column_name), MAX(DISTINCT column_name), MIN(DISTINCT column_name), and SUM(DISTINCT column_name), are not supported when you use CUBE or ROLLUP. If they are used, Microsoft SQL Server 2005 Database Engine returns an error message and cancels the query.
Remarks
MAX ignores any null values.
For character columns, MAX finds the highest value in the collating sequence.
Examples
The following example returns the highest (maximum) tax rate.
USE AdventureWorks;
GO
SELECT MAX(TaxRate)
FROM Sales.SalesTaxRate;
GO
Here is the result set.
------
19.60
(1 row(s) affected)
Warning, null value eliminated from aggregate.
See Also
Reference
Aggregate Functions (Transact-SQL)
OVER Clause (Transact-SQL)