Mysql SQL查询问题(sqlbolt.com,ex.10)

Mysql SQL查询问题(sqlbolt.com,ex.10),mysql,sql,sql-server,Mysql,Sql,Sql Server,我一次也做不完 如果我不完成这项工作,我就不能更进一步。 问题是示例2(不知道如何在此处粘贴表格): 对于每个职位,找出该职位员工的平均工作年限 我的尝试是: /*SELECT max(years_employed) FROM employees;*/ select role,avg(years_employed) from employees group by role; 在我看来,它完成了任务,但页面不接受它(解决方案按钮似乎未激活)。任何人都可以帮忙吗?试试这个 SELECT

我一次也做不完 如果我不完成这项工作,我就不能更进一步。 问题是示例2(不知道如何在此处粘贴表格):

对于每个职位,找出该职位员工的平均工作年限

我的尝试是:

   /*SELECT max(years_employed) FROM employees;*/
   select role,avg(years_employed) from employees group by role;
在我看来,它完成了任务,但页面不接受它(解决方案按钮似乎未激活)。任何人都可以帮忙吗?

试试这个

SELECT *, avg(years_employed) as average_Year FROM employees GROUP BY role
试试这个

SELECT *, avg(years_employed) as average_Year FROM employees GROUP BY role

如果要为其他列获取至少一个列值,可以使用以下查询:

Select role, 
       Min(Name) as Name, 
       Min(Building) as Building, 
       Min(Years_employed) as Years_employed, 
       avg(years_employed) as Average_years_employed  
from employees
Group By role

如果要为其他列获取至少一个列值,可以使用以下查询:

Select role, 
       Min(Name) as Name, 
       Min(Building) as Building, 
       Min(Years_employed) as Years_employed, 
       avg(years_employed) as Average_years_employed  
from employees
Group By role

我访问了链接。你的问题没有错。看看这里给出的解决方案,他们希望显示所有列。任务的要求不清楚,没有提到他们想要所有列,而且解决方案中给出的查询只在mySQL中工作,在每一个其他RDBMS中,它都会给出一条错误消息,因为每个未聚合的字段都需要在我访问过该站点的
组中。他们提供的答案是错误的。我访问了链接。你的问题没有错。看看这里给出的解决方案,他们希望显示所有列。任务的要求不清楚,没有提到他们想要所有列,而且解决方案中给出的查询只在mySQL中工作,在每一个其他RDBMS中,它都会给出一条错误消息,因为每个未聚合的字段都需要在我访问过该站点的
组中。他们提供的答案本身是错误的。我认为你的疑问行不通。select子句中的列应该在聚合函数中,或者在group by子句中。我认为您的查询不起作用。select子句中的列应位于聚合函数或group by子句中