mysql有哪些部门的平均工资高于5号部门的平均工资。
时间: 2024-03-06 14:49:22 浏览: 27
可以使用以下 SQL 语句来查询:
```
SELECT dept_name
FROM (
SELECT d.dept_name, AVG(e.salary) AS avg_salary
FROM departments d
JOIN employees e ON d.dept_no = e.dept_no
GROUP BY d.dept_name
) t
WHERE avg_salary > (
SELECT AVG(salary)
FROM employees
WHERE dept_no = 'd005'
)
```
其中,`departments` 表和 `employees` 表是 MySQL 自带的示例数据库 `employees` 中的表,`dept_name` 是部门名称,`salary` 是工资,`dept_no` 是部门编号。
该 SQL 语句会先计算每个部门的平均工资,并将结果与 5 号部门的平均工资进行比较,最终输出平均工资高于 5 号部门的部门名称。
相关问题
mysql查询部门的平均工资高于5号部门的平均工资的部门信息
好的,这个问题可以回答。以下是查询语句:
SELECT department_name
FROM departments
WHERE department_id IN (
SELECT department_id
FROM employees
GROUP BY department_id
HAVING AVG(salary) > (
SELECT AVG(salary)
FROM employees
WHERE department_id = 5
)
);
MySQL查询查询平均工资高于公司平均工资的部门有哪些
好的,假设您有一个名为"employee"的表,其中包含有"department"和"salary"两个字段。那么您可以通过以下的 SQL 语句来查询平均工资高于公司平均工资的部门:
```
SELECT department, AVG(salary) as dept_avg_salary,
(SELECT AVG(salary) FROM employee) as company_avg_salary
FROM employee
GROUP BY department
HAVING dept_avg_salary > company_avg_salary;
```
这个 SQL 语句会先以"department"字段进行分组,计算每个部门的平均工资,同时计算出整个公司的平均工资。然后通过"HAVING"子句筛选出符合条件的部门,即部门平均工资高于公司平均工资。