SQL Server MIN(): Get Minimum Value in a Column
In SQL Server, the
MIN() function is an aggregate function that returns the minimum value in the column or expression.
expression: It can be a constant, a table column, or function, and any combination of arithmetic, or string operators.
MIN() function can be used with numeric, character, uniqueidentifier, or with datetime data.
Returns the minimum value in the column/group of the same data type as column or expression.
the following query fetches the minimum
Salary from the
SELECT MIN(Salary) AS MinSal FROM Employee;
To check the above, fetch all rows from the
Employee table order by
As seen in the output, the lowest salary at 30,000.
MIN() with String Column
You can use
MIN() function on character/string data also.
In the following example, the
MIN() is used on the
LastName column of the
It returns the first value in the alphabetical order.
SELECT MIN(LastName) As Name FROM Employee;
MIN() with GROUP BY Clause
In the following example, the minimum salary in each department is returned by using the GROUP BY clause. Here, the GROUP BY clause groups the employees based on their department and then the minimum salary in each group is returned.
SELECT DepartmentId, MIN (Salary) AS DeptMinSalary FROM Employee GROUP BY DepartmentId;
MIN() with HAVING Clause
MIN() function can be used in the HAVING clause as shown in the following example.
Here the GROUP BY clause groups the employees according to their departments, gets the minimum salary of each department, and then the HAVING clause filters the result by returning only those departments having a minimum salary lesser than 35000.
SELECT DepartmentId, MIN(Salary) AS DeptMinSal FROM Employee GROUP BY DepartmentID HAVING MIN (Salary) < 35000;
Get Maximum and Minimum Value
In the following example, the MIN() and MAX() functions are used on the
Salary column of the
The minimum and maximum salary in the table is returned.
SELECT MIN(Salary) AS MinSal, MAX(Salary) AS MaxSal FROM Employee;