SQL subqueries on employee Database: List the name and average salary of employees in department wise
SQL subqueries on employee Database: Exercise-37 with Solution
[An editor is available at the bottom of the page to write and execute the scripts.]
37. From the following table, write a SQL query to compute department wise average salary of employees. Return employee name, average salary, department ID as "Current Salary".
Sample table: employees
Sample Solution:
SELECT e.emp_name,
d.avgsal,
e.dep_id AS "Current Salary"
FROM employees e,
(SELECT avg(salary) avgsal,
dep_id
FROM employees
GROUP BY dep_id) d
WHERE e.dep_id=d.dep_id;
Sample Output:
emp_name | avgsal | Current Salary ----------+-----------------------+---------------- KAYLING | 3316.6666666666666667 | 1001 BLAZE | 1633.3333333333333333 | 3001 CLARE | 3316.6666666666666667 | 1001 JONAS | 2251.4000000000000000 | 2001 SCARLET | 2251.4000000000000000 | 2001 FRANK | 2251.4000000000000000 | 2001 SANDRINE | 2251.4000000000000000 | 2001 ADELYN | 1633.3333333333333333 | 3001 WADE | 1633.3333333333333333 | 3001 MADDEN | 1633.3333333333333333 | 3001 TUCKER | 1633.3333333333333333 | 3001 ADNRES | 2251.4000000000000000 | 2001 JULIUS | 1633.3333333333333333 | 3001 MARKER | 3316.6666666666666667 | 1001 (14 rows)
Practice Online
Structure of employee Database:
Have another way to solve this solution? Contribute your code (and comments) through Disqus.
Previous: From the following table, write a SQL query to find those employees whose salary is less than the salary of his manager but more than the salary of any other manager. Return complete information about the employees.
Next: From the following table, write a SQL query to find five lowest paid workers. Return complete information about the employees.
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
- New Content published on w3resource:
- HTML-CSS Practical: Exercises, Practice, Solution
- Java Regular Expression: Exercises, Practice, Solution
- Scala Programming Exercises, Practice, Solution
- Python Itertools exercises
- Python Numpy exercises
- Python GeoPy Package exercises
- Python Pandas exercises
- Python nltk exercises
- Python BeautifulSoup exercises
- Form Template
- Composer - PHP Package Manager
- PHPUnit - PHP Testing
- Laravel - PHP Framework
- Angular - JavaScript Framework
- Vue - JavaScript Framework
- Jest - JavaScript Testing Framework