I have two tables.
DEPARTMENT (TABLE)
DEPTID NUMBER(38)
NAME CHAR(20)
RANK NUMBER(38)
EMPLOYEE (TABLE)
EMPID NUMBER(38)
DEPTID NUMBER(38)
NAME CHAR(40)
AGE NUMBER(38)
SALARY NUMBER(38)
And I am trying to run following query, which is continuously throwing error. The query is to update Rank in Department table based on the Average age of employees in every department.
UPDATE d 
SET d.rank = T.rank 
FROM  department d
INNER JOIN 
     (SELECT
          rownum as rank, age, deptId 
      FROM 
          (SELECT 
               AVG(age) AS age, deptid 
           FROM employee
           GROUP by deptId
           ORDER BY age DESC)) AS T ON T.deptId = d.deptId;
 
     
    