Page 43 - Modular_V2.0_SQL_Flipbook
P. 43
Stu_id Stu_name Subject_group Class
103 Riya Arts XII
104 Rani Science XII
105 Rita Science XII
Let us see the following query:
SELECT Subject_group, COUNT(*) AS Enrollment FROM STUDENTS GROUP BY Subject_group;
Output:
+---------------+------------+
| Subject_group | Enrollment |
+---------------+------------+
| Arts | 1 |
| Commerce | 2 |
| Science | 2 |
+---------------+------------+
The resultant of the query will be displaying student count subject wise. The GROUP BY also comes
with HAVING clause. The HAVING clause is used in the criteria for retrieving records with aggregate
functions along with GROUP BY. For example,
Table-STUDENTS
Stu_id Stu_name Subject_group Class Marks
101 Rahim Arts XII 97
102 Raja Commerce XII 86
103 Riya Arts XII 45
104 Rani Science XII 67
105 Rita Science XII 90
SELECT Subject_group, SUM(Marks) AS "TOTAL" FROM STUDENTS GROUP BY Subject_group
HAVING COUNT(*) >= 2;
+---------------+-------+
| Subject_group | TOTAL |
+---------------+-------+
| Arts | 142 |
+---------------+-------+
| Science | 157 |
+---------------+-------+
Let us consider another table EMPLOYEE:
Table-EMPLOYEE
Emp_id Emp_name Designation Salary City
101 Rahim VP 200000 Agra
102 Raja Manager 150000 Delhi
103 Riya Manager 150000 Agra
104 Rani Clerk 15000 Ambala
105 Rita Clerk 20000 Agra
SELECT Designation, SUM(Salary) AS Total_salary FROM EMPLOYEE WHERE City = 'Agra'
GROUP BY Designation HAVING COUNT(*) < 10;
41
More on MySQL

