SQL Exercise: Employees and managers name separated by a string
[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:

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.
Go to:
PREV : List the employees who joined in the month January.
NEXT : List all the employees whose designation is CLERK.
Practice Online
Sample Database: employee

Have another way to solve this solution? Contribute your code (and comments) through Disqus.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
