查詢平均工資最高,可以使用MySQL的AVG和ORDER BY語句實現。
SELECT department_name, AVG(salary) AS avg_salary FROM employees JOIN departments ON employees.department_id = departments.department_id GROUP BY departments.department_id ORDER BY avg_salary DESC LIMIT 1;
以上的查詢語句通過JOIN將employees和departments表連接,根據department_id分組并求出平均工資avg_salary,并按avg_salary降序排列。最后使用LIMIT限制結果只返回一條,即查找平均工資最高的部門。
需要注意的是,以上的查詢結果可能會出現多條平均工資相同的部門記錄,如果需要查找全部平均工資最高的部門,需要將LIMIT改為使用子查詢的方式。
SELECT department_name, avg_salary FROM ( SELECT department_name, AVG(salary) AS avg_salary FROM employees JOIN departments ON employees.department_id = departments.department_id GROUP BY departments.department_id ) AS temp_table WHERE avg_salary = ( SELECT MAX(avg_salary) FROM ( SELECT AVG(salary) AS avg_salary FROM employees JOIN departments ON employees.department_id = departments.department_id GROUP BY departments.department_id ) AS temp_table );
以上的查詢語句使用了子查詢的方式,先在一個臨時表中求出全部部門的平均工資,再在外層查詢中找出與最高平均工資相同的部門記錄。
上一篇css文本過長顯示三點
下一篇css文本裝飾值