查询高于自己部门平均工资的员工信息Oracle语句
时间: 2024-05-11 14:19:09 浏览: 7
以下是查询高于自己部门平均工资的员工信息的 Oracle SQL 语句:
```
SELECT e.employee_id, e.first_name, e.last_name, e.salary
FROM employees e
WHERE e.salary > (SELECT AVG(salary) FROM employees WHERE department_id = e.department_id)
ORDER BY e.salary DESC;
```
该语句使用子查询来获取每个员工所在部门的平均工资,并将其与该员工的工资进行比较,以找出高于平均工资的员工。最后,结果按照工资的降序排序。
相关问题
每个部门的平均工资和最高高工资Oracle语句
假设我们有一个名为employees的表,包含部门、工资等列,可以使用以下Oracle SQL语句查询每个部门的平均工资和最高工资:
```
SELECT department, AVG(salary) AS avg_salary, MAX(salary) AS max_salary
FROM employees
GROUP BY department;
```
这将计算每个部门的平均工资和最高工资,并将结果按部门分组。
oracle中查询部门平均工资在2500元以上的部门名称及平均工资的语句
您可以使用以下SQL语句查询部门平均工资在2500元以上的部门名称及平均工资:
```sql
SELECT d.department_name, AVG(e.salary) as average_salary
FROM departments d
JOIN employees e ON d.department_id = e.department_id
GROUP BY d.department_name
HAVING AVG(e.salary) > 2500;
```
这条语句将从"departments"表和"employees"表中联接数据,按部门分组计算平均工资,并筛选出平均工资大于2500元的部门名称及平均工资。