ребята, я должен выбрать всех сотрудников, у которых зарплата больше, чем средняя зарплата в его отделе, есть один код, который решает эту проблему, он здесь
select * from
(select e.first_name || ' ' || e.last_name ENAME,
d.department_name,e.salary, trunc(e.salary-avg(salary) over (partition by
e.department_id)) sal_dif
from employees e,departments d
where e.department_id=d.department_id)
where sal_dif>0
когда я запускаю его, он работает нормально, и стоимость этого кода на моем компьютере равна 6, я пытался сделать это по-другому, как этот
select first_name || ' '|| last_name,salary
from
(select first_name || ' ' || last_name,salary ,avg(salary) over (partition by department_id) avg_salary
from employees )
where salary>avg_salary;
Я удивлен тем, что, несмотря на наличие фамилии и имени в базе данных, ошибка
shows me ORA-00904: "LAST_NAME": invalid identifier
00904. 00000 - "%s: invalid identifier"
*Cause:
*Action:
Error at Line: 8 Column: 29
почему? Могу ли я переписать первый код другим способом? Большое спасибо