MySQL查询平均工资高于公司平均工资的部门有哪些?
时间: 2023-08-15 15:04:26 浏览: 489
假设您的公司有两个表,一个是员工表(employees),一个是部门表(departments),并且它们之间有一个关联字段dept_no。您可以使用以下SQL语句查询平均工资高于公司平均工资的部门:
```
SELECT departments.dept_name, AVG(employees.salary) AS dept_avg_salary,
(SELECT AVG(salary) FROM employees) AS company_avg_salary
FROM employees
INNER JOIN departments ON employees.dept_no = departments.dept_no
GROUP BY departments.dept_name
HAVING dept_avg_salary > company_avg_salary;
```
这个查询语句将使用INNER JOIN将员工表和部门表联接起来,并计算每个部门的平均工资。然后,它将使用HAVING子句过滤掉平均工资低于公司平均工资的部门,并输出符合条件的部门名称和平均工资。
相关问题
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"子句筛选出符合条件的部门,即部门平均工资高于公司平均工资。
)查询平均工资高于公司平均工资的部门有哪些mysql
您可以尝试使用以下的 SQL 查询语句来查询平均工资高于公司平均工资的部门:
```
SELECT department, AVG(salary) AS department_avg_salary,
(SELECT AVG(salary) FROM employee) AS company_avg_salary
FROM employee
GROUP BY department
HAVING department_avg_salary > company_avg_salary;
```
其中,employee 是员工表,包含了员工的部门和工资信息,department 是部门的名称,salary 是工资。这个查询语句会返回所有平均工资高于公司平均工资的部门,以及这些部门的平均工资。
阅读全文