SQL HAVING Clause

The SQL HAVING Clause

The HAVING clause was added to SQL because the WHERE keyword could not be used with aggregate functions.

HAVING Syntax

SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
HAVING condition
ORDER BY column_name(s);

Demo Database

Below is a selection from the "Customers" table in the Northwind sample database:

SQL HAVING Examples

The following SQL statement lists the number of customers in each country. Only include countries with more than 5 customers:

The following SQL statement lists the number of customers in each country, sorted high to low (Only include countries with more than 5 customer ):

Demo Database

Below is a selection from the "Orders" table in the Northwind sample database:

And a selection from the "Employees" table:

More HAVING Examples

The following SQL statement lists the employees that have registered more than 10 orders:

The following SQL statement lists if the employees "Davolio" or "Fuller" have registered more than 25 orders:

NOTE: Whenever we want to apply filter condition in Aggregate functions, we use HAVING Clause. For Scalar Functions, we use WHERE Clause.

Last updated

Was this helpful?