w3resource

SQL Exercise: Employees and managers name separated by a string

SQL employee Database: Exercise-19 with Solution

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

19. From the following table, write a SQL query to separate the names of employees and their managers by the string 'works for'.

Sample table: employees


Pictorial Presentation:

SQL exercises on employee Database: List the name of employees and their manager separated by the string 'works for'

Sample Solution:

SELECT e.emp_name || ' works for ' || m.emp_name
FROM employees e,
     employees m
WHERE e.manager_id = m.emp_id;

Sample Output:

         ?column?
--------------------------
 BLAZE works for KAYLING
 CLARE works for KAYLING
 JONAS works for KAYLING
 SCARLET works for JONAS
 FRANK works for JONAS
 SANDRINE works for FRANK
 ADELYN works for BLAZE
 WADE works for BLAZE
 MADDEN works for BLAZE
 TUCKER works for BLAZE
 ADNRES works for SCARLET
 JULIUS works for BLAZE
 MARKER works for CLARE
(13 rows)

Explanation:

The provided query in SQL that selects the names of all employees along with their corresponding manager's name by joining the 'employees' table to itself using the "manager_id" and "emp_id" columns.

The "||" operator concatenates the "emp_name" column of the employee with the string " works for " and the "emp_name" column of their manager.

The WHERE clause includes the employees who have a corresponding manager in the 'employees' table.

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: List the employees who joined in the month January.
Next SQL Exercise: List all the employees whose designation is CLERK.

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.