I have two tables:
EMPLOYEE: ID|DEPARTMENT_ID|CHIEF_ID|NAME|SALARY
DEPARTMENT: ID|NAME
The task here is to get list of departments with total max salary of all employees.
The query I'm trying to use (completes with no results):
SELECT s.DEPARTMENT_ID, s.SALARY_SUM
FROM (SELECT DEPARTMENT_ID, SUM(SALARY) SALARY_SUM, w.ID
FROM EMPLOYEE e
JOIN DEPARTMENT w ON w.ID = e.DEPARTMENT_ID
GROUP BY e.DEPARTMENT_ID, w.ID) s
WHERE s.SALARY_SUM = (SELECT MAX(SALARY) MaxSum
FROM EMPLOYEE w1
WHERE w1.ID = s.ID)
This will get you all the Deoatnent that have the highest Sum from their employees
CREATE tABLe EMPLOYEE(DEPARTMENT_ID INT, SALARY INT) GO
CREATE TABLe DEPARTMENT(ID int) GO
WITH CTE as (SELECT DEPARTMENT_ID, SUM(SALARY) SALARY_SUM, w.ID FROM EMPLOYEE e JOIN DEPARTMENT w ON w.ID = e.DEPARTMENT_ID GROUP BY e.DEPARTMENT_ID, w.ID) SELECT s.DEPARTMENT_ID, s.SALARY_SUM FROM CTE s WHERE s.SALARY_SUM = (SELECT MAX(SALARY_SUM) MaxSum FROM CTE w1 ) GO
DEPARTMENT_ID | SALARY_SUM ------------: | ---------:
db<>fiddle here