Junior SQL

What is the difference between WHERE and HAVING in SQL?

  • WHERE: Filters rows before any grouping is done (i.e., filters individual records).
  • HAVING: Filters records after grouping is done (i.e., filters grouped results).

Example:

SELECT department, AVG(salary)

FROM employees

GROUP BY department

HAVING AVG(salary) > 50000;

In this query, HAVING is used to filter groups that have an average salary greater than

50,000.

More from SQL Server Tutorial

All questions for this course