Bird
0
0

Consider the query:

medium📝 query result Q5 of 15
SQL - Subqueries
Consider the query:
SELECT avg_salary FROM (SELECT department_id, AVG(salary) AS avg_salary FROM employees GROUP BY department_id) AS dept_avg WHERE avg_salary > 50000;

What does this query return?
ADepartments with salaries below 50000
BAll employee salaries above 50000
CAverage salaries of departments where average salary is above 50000
DSyntax error due to missing GROUP BY
Step-by-Step Solution
Solution:
  1. Step 1: Understand the subquery

    The subquery calculates average salary per department and aliases it as dept_avg.
  2. Step 2: Apply the WHERE filter on avg_salary

    The outer query filters only those departments where the average salary is greater than 50000.
  3. Final Answer:

    Average salaries of departments where average salary is above 50000 -> Option C
  4. Quick Check:

    Filter on derived table column works as expected [OK]
Quick Trick: Filter on derived table columns in outer query [OK]
Common Mistakes:
MISTAKES
  • Thinking it filters individual employees
  • Missing GROUP BY causing errors
  • Confusing avg_salary with individual salaries

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More SQL Quizzes