The HAVING clause in SQL Server includes one or more conditions that must be TRUE for groups of records. It’s similar to the GROUP BY clause’s WHERE clause. The only distinction is that the WHERE clause cannot be used with aggregate functions, whereas the HAVING clause can.
The HAVING clause is always followed by the GROUP BY clause and preceded by the ORDER BY clause.
Syntax:
SELECT column_name, aggregate_function(column_name)
FROM table_name
GROUP BY column_name
HAVING condition;
Example:
Consider the following Employee table.
EmpId | FirstName | LastName | Salary | DeptId |
---|---|---|---|---|
1 | John | King | 33000 | 1 |
2 | James | Bond | 33000 | 1 |
3 | Neena | Patel | 17000 | 2 |
4 | Lex | De Haan | 15000 | 1 |
5 | Amit | Patel | 15000 | 1 |
6 | Abdul | Kalam | 25000 | 2 |
Query to display the departments where the sum of salaries is 50,000 or more. In this condition, we will use HAVING Clause.
SELECT DeptId,sum(Salary) as Salary
FROM Employee
GROUP BY DeptId
HAVING SUM(Salary) >= 50000;
Output:
DeptId | Salary |
1 | 96000 |
Note: also read about SQL: Group By Clause
Follow Me
Please follow me to read my latest post on programming and technology if you like my post.
https://www.instagram.com/coderz.py/
https://www.facebook.com/coderz.py
Staying up to the mark is what defines me. Hi all! I’m Rabecca Fatima a keen learner, great enthusiast, ready to take new challenges as stepping stones towards flying colors.
Leave a Comment
You must be logged in to post a comment.