如何用sql语句查询每个分组内的成员的平均值
有如下两个基本表:
student表
字段 备注
sId 学号
sName 学生姓名
sSex 性别
sAge 年龄
Scores表
字段 备注
sId 学号
cId 课程编号
score 分数
现在我想查 学号、学生名、平均分(每一个学生所选修的所有课程的分数之和除以选修的课程数)
这个sql与语句该怎样写呢?
sql
avg
查询
分组
------解决方案--------------------select a.sid 学号,a.sname 学生名,sum(b.score)/count(cid) 平均分 from student a left join scores b where a.sid=b.sid order by a.sid
------解决方案--------------------select
a.sId
, a.sName
, avg(b.score) as avgscore
from
student a
left join scores b
where
a.sId = b.sId
group by
a.sId,a.sName
------解决方案--------------------select
st.sId
, st.sName
, avg(sc.score) avgscore
from
student st
left join scores sc
on
st.sId = sc.sId
group by
st.sId
------解决方案--------------------2表连接 计算平均分就可以了