w3resource

SQL Exercise: List all the employees who report to Blaze


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

48. From the following table, write a SQL query to find those employees who work as managers. Return complete information about the employees. Use co-related subquery.

Sample table: employees


Sample Solution:


SELECT *  -- Select all columns from the employees table (alias e1)
FROM employees e1  
WHERE emp_id IN (  
-- Subquery: Select the manager_id from the employees table (alias e2)
    SELECT manager_id  
    FROM employees e2  
-- Correlation: Match the department_id of e2 with the department_id of the current row in e1
    WHERE e2.dep_id = e1.dep_id  
); 

Sample Output:

 emp_id | emp_name | job_name  | manager_id | hire_date  | salary  | commission | dep_id
--------+----------+-----------+------------+------------+---------+------------+--------
  68319 | KAYLING  | PRESIDENT |            | 1991-11-18 | 6000.00 |            |   1001
  66928 | BLAZE    | MANAGER   |      68319 | 1991-05-01 | 2750.00 |            |   3001
  67832 | CLARE    | MANAGER   |      68319 | 1991-06-09 | 2550.00 |            |   1001
  65646 | JONAS    | MANAGER   |      68319 | 1991-04-02 | 2957.00 |            |   2001
  67858 | SCARLET  | ANALYST   |      65646 | 1997-04-19 | 3100.00 |            |   2001
  69062 | FRANK    | ANALYST   |      65646 | 1991-12-03 | 3100.00 |            |   2001
(6 rows)

Explanation:

  • Outer Query (e1): Selects all columns from the employees table.
  • Inner Query (e2): Retrieves manager_id from the employees table where the department_id matches the department_id of the current row in the outer query (e1).
  • The inner query is co-related because it depends on the department_id of the outer query's current row.

This co-relation ensures the inner query dynamically adapts to each row of the outer query.


Practice Online



Structure of employee Database:

employee database structure

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

Previous SQL Exercise: List all employees who are subordinates to Blaze.
Next SQL Exercise: Names of the employees and the manager of JONAS.

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.