﻿ SQL exercises on employee Database: Display the number of employee for each job in each department - w3resource

# SQL exercises on employee Database: Display the number of employee for each job in each department

## SQL employee Database: Exercise-97 with Solution

[An editor is available at the bottom of the page to write and execute the scripts.]

97. From the following table, write a SQL query to count the number of employees of each designation in each department. Return department id, job name and number of employees.

Sample table: employees

Sample Solution:

SELECT dep_id,
job_name,
count(*)
FROM employees
GROUP BY dep_id,
job_name;

Sample Output:

dep_id | job_name  | count
--------+-----------+-------
3001 | MANAGER   |     1
2001 | ANALYST   |     2
3001 | SALESMAN  |     4
1001 | MANAGER   |     1
1001 | PRESIDENT |     1
2001 | MANAGER   |     1
2001 | CLERK     |     2
1001 | CLERK     |     1
3001 | CLERK     |     1
(9 rows)

Relational Algebra Expression:

Relational Algebra Tree:

## Practice Online

Sample Database: employee

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

﻿

## SQL: Tips of the Day

Delete all Duplicate Rows except for One in MySQL?

SELECT * FROM names;

+----+--------+
| id | name   |
+----+--------+
| 2  | yahoo  |
| 3  | msn    |
| 6  | yahoo  |
+----+--------+

1. If you want to keep the row with the lowest id value:

DELETE n1 FROM names n1, names n2 WHERE n1.id > n2.id AND n1.name = n2.name

2. If you want to keep the row with the highest id value:

DELETE n1 FROM names n1, names n2 WHERE n1.id < n2.id AND n1.name = n2.name

Ref: https://bit.ly/3NroM8o