MySQL显示,每年,该年度最大的部门及其平均工资
根据这个问题,输出应该是“每年最大的部门,然后是该部门的平均工资”。在MySQL数据库中,工资和部门emp表中有“from_date”和“to_date”列。并且没有任何具体的年份包含所需最大部门和工资的确切年份 在我下面的查询中,它返回同一年两次或更多次。但我只需要每年最大的部门和它的平均工资。但是我不确定我必须选择哪一天才能得到正确的结果 注:在薪资表中—“从日期”是指从该年度开始领取薪资的人员到“截止日期”年度的薪资。在dept_emp表中,“from_date”大约是每个人从工作年开始到“to_date”的。除了这些日期之外,没有添加日期 我想举一个例子来澄清这个问题: 例如,2000年,部门启动财务,emp-34000的数量-平均工资-56700。2000年,最大的部门是财务部门,该部门的平均工资为56700美元 提前感谢您的帮助:)MySQL显示,每年,该年度最大的部门及其平均工资,mysql,Mysql,根据这个问题,输出应该是“每年最大的部门,然后是该部门的平均工资”。在MySQL数据库中,工资和部门emp表中有“from_date”和“to_date”列。并且没有任何具体的年份包含所需最大部门和工资的确切年份 在我下面的查询中,它返回同一年两次或更多次。但我只需要每年最大的部门和它的平均工资。但是我不确定我必须选择哪一天才能得到正确的结果 注:在薪资表中—“从日期”是指从该年度开始领取薪资的人员到“截止日期”年度的薪资。在dept_emp表中,“from_date”大约是每个人从工作年开始到
为什么不尝试在“员工人数”列中添加MAX子句
SELECT
dept_name AS Department_Name,
MAX(COUNT(de.emp_no)) AS Number_of_Employees,
YEAR(s.from_date) AS Year,
AVG(salary) AS Average_Salary
FROM
dept_emp de
JOIN
departments d ON de.dept_no = d.dept_no
JOIN
salaries s ON de.emp_no = s.emp_no
GROUP BY YEAR(s.from_date)
看,这不清楚吗?如果是的话,我会尽力让它更好。如果我不认为它有用,我真的不会费心提供链接。它对我不起作用,我遇到了类似“无效使用组函数”这样的错误
SELECT
dept_name AS Department_Name,
MAX(COUNT(de.emp_no)) AS Number_of_Employees,
YEAR(s.from_date) AS Year,
AVG(salary) AS Average_Salary
FROM
dept_emp de
JOIN
departments d ON de.dept_no = d.dept_no
JOIN
salaries s ON de.emp_no = s.emp_no
GROUP BY YEAR(s.from_date)