Skip to main content
CodeOath
← All problems

Problem

Employees Above Company Average

Medium
  • sql

Return the employees who earn more than the average salary of the whole company. Employees with no salary are left out of that average and are never returned.

Expected columns: all four columns of Employees (id, name, dept, salary), in that order. Row order does not matter.

Example 1
Input
Employees(id, name, dept, salary)
1 | Alice | Sales | 50000
2 | Bob | Sales | 60000
3 | Carol | IT | 70000
4 | Dave | IT | NULL
5 | Eve | HR | 55000
Output
id | name | dept | salary
2 | Bob | Sales | 60000
3 | Carol | IT | 70000
Explanation

the four salaries on record average (50000 + 60000 + 70000 + 55000) / 4 = 58750. Bob and Carol earn more than that. Dave has no salary, so he is not compared.

Sample database

Your query runs in the browser against these tables. Column names are exact.

  • Departments

    • dept_id
    • dept
  • Employees

    • id
    • name
    • dept
    • salary
  • Customers

    • customer_id
    • name
    • email
    • city
    • signup_date
  • Products

    • product_id
    • name
    • category
    • price
  • Orders

    • order_id
    • customer_id
    • order_date
    • status
  • OrderItems

    • order_id
    • product_id
    • quantity
  • Logins

    • customer_id
    • login_date
  • Staff

    • staff_id
    • name
    • title
    • manager_id

No automatic grading here

Run your query and check the rows against what the question asks for. Then open the model answer to compare.

SQL

Tab indents. Press Esc, then Tab to leave the editor.

Loading the SQL engine…