This documentation is archived and is not being maintained.

MIN (Transact-SQL)

Returns the minimum value in the expression. May be followed by the OVER clause.

Topic link icon Transact-SQL Syntax Conventions

MIN ( [ ALL | DISTINCT ] expression ) 


Applies the aggregate function to all values. ALL is the default.


Specifies that each unique value is considered. DISTINCT is not meaningful with MIN and is available for SQL-92 compatibility only.


Is a constant, column name, or function, and any combination of arithmetic, bitwise, and string operators. MIN can be used with numeric, char, varchar, or datetime columns, but not with bit columns. Aggregate functions and subqueries are not permitted.

For more information, see Expressions (Transact-SQL).

Returns a value same as expression.

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 ends the query.

MIN ignores any null values.

With character data columns, MIN finds the value that is lowest in the sort sequence.

The following example returns the lowest (minimum) tax rate.

USE AdventureWorks;
FROM Sales.SalesTaxRate;

Here is the result set.


(1 row(s) affected)