Bird
0
0

Given tables:

hard📝 Application Q9 of 15
PostgreSQL - Joins in PostgreSQL
Given tables:
employees(id, name, manager_id)
Write a query to list employee names with their manager names using INNER JOIN.
ASELECT e.name, m.name FROM employees e LEFT JOIN employees m ON e.manager_id = m.id;
BSELECT e.name, m.name FROM employees e INNER JOIN managers m ON e.manager_id = m.id;
CSELECT e.name, m.name FROM employees e INNER JOIN employees m ON e.id = m.manager_id;
DSELECT e.name AS employee, m.name AS manager FROM employees e INNER JOIN employees m ON e.manager_id = m.id;
Step-by-Step Solution
Solution:
  1. Step 1: Use self join on employees table

    Join employees table to itself matching e.manager_id to m.id to get manager info.
  2. Step 2: Select employee and manager names

    Alias tables as e and m, select e.name and m.name with aliases for clarity.
  3. Final Answer:

    SELECT e.name AS employee, m.name AS manager FROM employees e INNER JOIN employees m ON e.manager_id = m.id; -> Option D
  4. Quick Check:

    Self join employees on manager_id = id for manager names [OK]
Quick Trick: Self join employees on manager_id to get manager names [OK]
Common Mistakes:
  • Using LEFT JOIN instead of INNER JOIN
  • Joining on wrong columns
  • Referencing non-existent managers table

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More PostgreSQL Quizzes