w3resource

MySQL Aggregate Function Exercises: Get the average salary and number of employees working the department 90

MySQL Aggregate Function: Exercise-5 with Solution

Write a query to get the average salary and number of employees working the department 90.

Sample table: employees

+-------------+-------------+-------------+----------+--------------------+------------+------------+----------+----------------+------------+---------------+
| EMPLOYEE_ID | FIRST_NAME  | LAST_NAME   | EMAIL    | PHONE_NUMBER       | HIRE_DATE  | JOB_ID     | SALARY   | COMMISSION_PCT | MANAGER_ID | DEPARTMENT_ID |
+-------------+-------------+-------------+----------+--------------------+------------+------------+----------+----------------+------------+---------------+
|         100 | Steven      | King        | SKING    | 515.123.4567       | 1987-06-17 | AD_PRES    | 24000.00 |           0.00 |          0 |   		  90 |
|         101 | Neena       | Kochhar     | NKOCHHAR | 515.123.4568       | 1987-06-18 | AD_VP      | 17000.00 |           0.00 |        100 |            90 |
|         102 | Lex         | De Haan     | LDEHAAN  | 515.123.4569       | 1987-06-19 | AD_VP      | 17000.00 |           0.00 |        100 |            90 |
|         103 | Alexander   | Hunold      | AHUNOLD  | 590.423.4567       | 1987-06-20 | IT_PROG    |  9000.00 |           0.00 |        102 |            60 |
|         104 | Bruce       | Ernst       | BERNST   | 590.423.4568       | 1987-06-21 | IT_PROG    |  6000.00 |           0.00 |        103 |            60 |
|         105 | David       | Austin      | DAUSTIN  | 590.423.4569       | 1987-06-22 | IT_PROG    |  4800.00 |           0.00 |        103 |            60 |
|         106 | Valli       | Pataballa   | VPATABAL | 590.423.4560       | 1987-06-23 | IT_PROG    |  4800.00 |           0.00 |        103 |            60 |
|         107 | Diana       | Lorentz     | DLORENTZ | 590.423.5567       | 1987-06-24 | IT_PROG    |  4200.00 |           0.00 |        103 |            60 |
|         108 | Nancy       | Greenberg   | NGREENBE | 515.124.4569       | 1987-06-25 | FI_MGR     | 12000.00 |           0.00 |        101 |           100 |
.........
|         206 | William     | Gietz       | WGIETZ   | 515.123.8181       | 1987-10-01 | AC_ACCOUNT |  8300.00 |           0.00 |        205 |           110 |
+-------------+-------------+-------------+----------+--------------------+------------+------------+----------+----------------+------------+---------------+

View the table

Code:

-- Calculating the average salary and counting the number of employees in department 90
SELECT AVG(salary), COUNT(*) 
-- Selecting data from the employees table
FROM employees 
-- Filtering the result set to include only employees in department 90
WHERE department_id = 90;

Explanation:

  • This SQL query calculates the average salary and counts the number of employees in department 90.
  • The AVG() function calculates the average value of the specified column (salary in this case).
  • The COUNT(*) function counts the number of rows in the table, which effectively counts the total number of employees.
  • The WHERE clause filters the result set to include only employees who belong to department 90.
  • This query is useful when you want to find out the average salary and the number of employees in a specific department, in this case, department 90.

Relational Algebra Expression:

Relational Algebra Expression: Aggregate Function: Get the average salary and number of employees working the department 90.


Relational Algebra Tree:

Relational Algebra Tree: Aggregate Function: Get the average salary and number of employees working the department 90.


Pictorial Presentation of the above query

Pictorial: Query to get the average salary and number of employees working the department 90.


Go to:


PREV :Write a query to get the maximum salary of an employee working as a Programmer.
NEXT :Write a query to get the highest, lowest, sum, and average salary of all employees.

MySQL Code Editor:

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

What is the difficulty level of this exercise?



Follow us on Facebook and Twitter for latest update.