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 Function will ignore Null values. The syntax of the SQL Server MIN Function is
SELECT MIN([Column_Name]) FROM [Source]
For this Function, use the below data
SQL MIN Example
The Min function in SQL Server returns the Minimum value from the total records present in the specified column. This MIN function query finds the Minimum yearly income present in the [Yearly Income] column from Customers table.
SELECT MIN([YearlyIncome]) AS [Minimum Income] FROM [Customer]
Minimum Income -------------- 50000.00
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 this to find the Lowest pricing product present in each group. Let us see the SQL MIN Group By 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 query groups the Customers by their Occupation. Then finds the Minimum yearly Income present in each group.
The last line 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.
SELECT [Occupation] ,MIN([YearlyIncome]) AS [Minimum Income] FROM [Customer] GROUP BY [Occupation] HAVING MIN ([YearlyIncome]) > 50000 -- Last Line
SQL Min Subquery
While retrieving the data, in some instances, we check for the conditions against the aggregated data. In these situations, we have to use Subquery in Where Clause. This minimum function query returns the Customers whose [Yearly Income] is greater than the Minimum yearly income.
SELECT [FirstName] ,[LastName] ,[YearlyIncome] ,[Education] ,[Occupation] FROM [Customer] WHERE [YearlyIncome] > (SELECT MIN([YearlyIncome]) FROM [Customer])
From the first example, see that Minimum Yearly Income is 50000. So above Aggregate Function query display all the customers whose yearly income is greater than 50000