1.每科的平均成绩:
select avg(grade) from stu_grade group by course
2.每科的最高成绩及对应的学生信息:
select
B.grade,
A.*
from stu_grade as B
left join stu_info as A on B.stu_No = A.stu_No
group by B.course
order by B.grade desc limit 1
3.每科的最低成绩及对应的学生信息:
select
B.grade,
A.*
from stu_grade as B
left join stu_info as A on B.stu_No = A.stu_No
group by B.course
order by B.grade asc limit 1
连个字段名都没有 ..............用
select * from tbname group by f2 having min(f3)试试
-------第一步,求总成绩(我把总成绩放在一个视图里了)createviewtgasselect学号,sum(成绩)tfrom成绩表groupby学号-------第二步,将总成绩导入到学生表(先运行上面代码)update学生表set总分=tg.tfrom学生表,tgwhere学生表.学号=tg.学号------第三步,排名次select学号,姓名,总分,isnull((selectsum(1)from学生表where总分>A.总分),0)+1名次from学生表asAorderby(selectsum(1)from学生表where总分>=A.部分)-----------最后,嘿嘿,我能力不足,没做触发器了欢迎分享,转载请注明来源:内存溢出
评论列表(0条)