The SQL MIN Function is an Aggregate Function used to find the Minimum value from the total records (or rows) selected by the SELECT Statement. The SQL Server MIN Function will ignore Null values. The basic syntax of the SQL Server MIN Function is
SELECT MIN ([Column_Name]) FROM [Source]
For this SQL Server Min Function, we are going to use the below shown data
SQL MIN Example
The Min function in SQL Server returns the Minimum value from the total records present in the specified column.
For example, the following MIN function query finds the Minimum yearly income present in the [Yearly Income] column from Customers table.
-- SQL Server MIN Function example SELECT MIN ([YearlyIncome]) AS [Minimum Income] FROM [Customer]
SQL MIN Group By Clause
Generally, we usually check minimum product price (Lowest pricing product) belongs to a particular category or color, etc.
In these circumstances, we use GROUP BY Clause to group the products by color or category. Next, use the SQL Min Function to find the Lowest pricing product present in each group. Let us see the MIN Group By Example
-- SQL Server MIN Function example SELECT [Occupation] ,MIN ([YearlyIncome]) AS [Minimum Income] FROM [Customer] GROUP BY [Occupation]
SQL MIN Having Clause
When we are grouping the data, In some instances, we usually check for the conditions against the aggregated data. In these conditions, we use the HAVING Clause along with Group By Statement.
For instance, the following SQL Server MIN function query groups the Customers by their Occupation. Then finds the Minimum yearly Income present in each group.
-- SQL Server MIN Function example SELECT [Occupation] ,MIN ([YearlyIncome]) AS [Minimum Income] FROM [Customer] GROUP BY [Occupation] HAVING MIN ([YearlyIncome]) > 50000
Below lines of code verify whether the Minimum Yearly income of each Group is greater than 50000 or not. If this is true, the corresponding records will be displayed.
HAVING MIN ([YearlyIncome]) > 50000
SQL Min Subquery
For example, the following SQL Server minimum function query returns all the Customers whose [Yearly Income] is greater than the Minimum yearly income.
-- SQL Server MIN Function example SELECT [FirstName] ,[LastName] ,[YearlyIncome] ,[Education] ,[Occupation] FROM [Customer] WHERE [YearlyIncome] > (SELECT MIN([YearlyIncome]) FROM [Customer])
From the first min function example, you can observe that Minimum Yearly Income is 50000. So above Aggregate Function query display all the customers from the Customers table whose yearly income is greater than 50000