w3resource

SQL Exercise: 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 in each designation of a 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)

Explanation:

The given query in SQL that retrieves "dep_id" ,"job_name" and the count of employees in each department and job name, but only for those who were hired on or after January 1st, 2022 from the table 'employees'.

It groups the data by the combination of columns "dep_id" and "job_name", and counts the number of records for each combination.

Relational Algebra Expression:

Relational Algebra Expression: Display the number of employee for each job in each department.

Relational Algebra Tree:

Relational Algebra Tree: Display the number of employee for each job in each department.

Practice Online


Sample Database: employee

employee database structure

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

Previous SQL Exercise: In ASC order, list managers and count their employees.
Next SQL Exercise: List the department where at least two employees work.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.