Please note, this is a STATIC archive of website www.w3resource.com from 19 Jul 2022, cach3.com does not collect or store any user information, there is no "phishing" involved.
w3resource

SQL exercises on employee Database: List the no. of employees and average salary within each department for each job name

SQL employee Database: Exercise-104 with Solution

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

104. From the following table, write a SQL query to find number of employees and average salary. Group the result set on department id and job name. Return number of employees, average salary, department ID, and job name.

Sample table: employees


Sample Solution:

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

Sample Output:

 count |          avg          | dep_id | job_name
-------+-----------------------+--------+-----------
     1 | 2750.0000000000000000 |   3001 | MANAGER
     2 | 3100.0000000000000000 |   2001 | ANALYST
     4 | 1500.0000000000000000 |   3001 | SALESMAN
     1 | 2550.0000000000000000 |   1001 | MANAGER
     1 | 6000.0000000000000000 |   1001 | PRESIDENT
     1 | 2957.0000000000000000 |   2001 | MANAGER
     2 | 1050.0000000000000000 |   2001 | CLERK
     1 | 1400.0000000000000000 |   1001 | CLERK
     1 | 1050.0000000000000000 |   3001 | CLERK
(9 rows)

Relational Algebra Expression:

Relational Algebra Expression: List the no. of employees and average salary within each department for each job name.

Relational Algebra Tree:

Relational Algebra Tree: List the no. of employees and average salary within each department for each job name.

Practice Online


Sample Database: employee

employee database structure

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

Previous: From the following table, write a SQL query to check whether the employees ID are unique or not. Return employee id, number of employees.
Next: From the following table, write a SQL query to find those employees whose name start with 'A' and six characters in length. Return employee name.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



SQL: Tips of the Day

SQL Server SELECT into existing table.

INSERT INTO dbo.TABLETWO
SELECT col1, col2
  FROM dbo.TABLEONE
 WHERE col3 LIKE @search_key

This assumes there's only two columns in dbo.TABLETWO - you need to specify the columns otherwise:

INSERT INTO dbo.TABLETWO
  (col1, col2)
SELECT col1, col2
  FROM dbo.TABLEONE
 WHERE col3 LIKE @search_key

Database: SQL Server

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