Sql 在where子句中放置平均函数
我想显示收入高于平均工资的所有员工的员工编号、姓氏和工资,并按工资升序对结果进行排序。然而,我得到了一个错误“这里不允许使用组函数”。我该怎么写呢Sql 在where子句中放置平均函数,sql,oracle,Sql,Oracle,我想显示收入高于平均工资的所有员工的员工编号、姓氏和工资,并按工资升序对结果进行排序。然而,我得到了一个错误“这里不允许使用组函数”。我该怎么写呢 select employee_id,last_name,salary from employees where salary > avg(salary) order by salary; 使用AVG()OVER()窗口聚合函数 select * from ( select employee_id,last_name,salary,avg(
select employee_id,last_name,salary from employees
where salary > avg(salary)
order by salary;
使用AVG()OVER()
窗口聚合函数
select * from
(
select employee_id,last_name,salary,avg(salary)over() as avg_salary from employees
) e
where salary > avg_salary
order by salary;
子查询周围不需要()吗?我刚刚提交了一份编辑稿,@luistiejon。
select * from
(
select employee_id,last_name,salary,avg(salary)over() as avg_salary from employees
) e
where salary > avg_salary
order by salary;