Return the single department whose employees have the highest average salary. Employees with no salary are left out of the average. If departments tie for the highest average, returning any one of them is fine.
Expected columns:dept and avg_salary, in a single row.
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
dept | avg_salary
IT | 70000
Explanation
the averages are IT 70000, Sales 55000 and HR 55000, so IT is the highest.
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.