Mysql SQL查询以获取两个表中每个组的平均值
我有两张桌子:学生和成绩 对于学生,字段为Mysql SQL查询以获取两个表中每个组的平均值,mysql,sql,group-by,intersect,Mysql,Sql,Group By,Intersect,我有两张桌子:学生和成绩 对于学生,字段为student\u id、name、grade 对于结果,字段为student\u id,score 年级就像幼儿园,一、二、三。。。。就像在学校里一样 如您所见,student\u id在两个表中 我想要一个SQL查询,返回每个等级的平均分数,如 Pre-School => 50 Kindergarten => 26 等等 我尝试使用左连接分组,但没有任何效果 我一直在处理的查询如下: SELECT cat.grade,
student\u id、name、grade
对于结果,字段为
student\u id,score
年级就像幼儿园,一、二、三。。。。就像在学校里一样
如您所见,student\u id
在两个表中
我想要一个SQL查询,返回每个等级的平均分数,如
Pre-School => 50
Kindergarten => 26
等等
我尝试使用左连接分组,但没有任何效果
我一直在处理的查询如下:
SELECT
cat.grade,
dog.score
FROM (SELECT * FROM students GROUP BY grade) AS cat, results AS dog
GROUP BY cat.grade
但这只是给了我一个等级的结果,所以这里的
AVG()
没有给出正确的答案。应该很简单,将两个表连接在一起,按等级分组,然后选择所有分数的平均值
select id, avg(salary) avg_salary from Employee join results group by id order by avg(salary) desc;
ID AVG_SALARY
---- ------------------------
07 7897.78
02 6661.78
03 6544.78
06 4322.78
04 2344.78
05 2334.78
01 1234.56
08 1232.78
SELECT grade,
Avg(score)
FROM students
JOIN results using (student_id)
GROUP BY grade
您想为每个学生或所有学生获得每个年级的avarege分数吗?
从“按年级加入b组”中选择AVG(分数)
没问题,欢迎使用StackOverflow。记住对你认为正确的答案进行投票,并接受最能回答你问题的答案。非常感谢。我接受了你的回答。我不能投票,因为我的声望不低于15。非常感谢。