SQL HAVING


David Haertzen David Haertzen, Tutorial Author
Check out our
Data Warehousing Tutorial.
Previous | Next

SQL > SQL Advanced > SQL HAVING


What is SQL HAVING?

The SQL HAVING is a clause that enables conditions at the aggregate level. It is used instead of the WHERE clause when Aggregate Functions are used.  

 

The SQL HAVING clause supports the same operators as the WHERE clause. Grouped results can be checked using this clause.

Why Use SQL HAVING?

The HAVING clause is used to SELECT information based aggregate information. For example, one may want to list sales representatives that have sales totaling over $10,000. This is very useful for analytical reporting.


How To Use SQL HAVING

SQL HAVING is used as follows.

SQL HAVING Syntax

 
SELECT <column_name1>, <column_name2> <aggregate_function>
FROM <table_name>
GROUP BY <column_name1>, <column_name2>
HAVING <having_condition>
 

SQL HAVING Example

The following example regions from the branch table that have total employee_count greater than 5.

Here are the contents of the table:

Table: BRANCH
branch_nbrbranch_nameregion_nbremployee_count
108New York10010
110Boston1006
212Chicago2005
404San Diego4006
415San Jose4003

This SQL Statement with HAVING is executed:

 
SELECT region_nbr, sum(employee_count)
FROM branch
GROUP BY region_nbr
HAVING sum(employee_count) > 5
ORDER BY region_nbr
 

Here is the result.

region_nbrsum(employee_count)
10016
4009

Copyright© 1999-2015, First Place Software, Inc.