求高手一句sql就写出这个需求
学生表 student
--------------------------------
id name
--------------------------------
1 S1
2 S2
3 S3
4 S4
考试表 exam
--------------------------------
id name
--------------------------------
1 E1
2 E2
成绩表 score
--------------------------------
id exam_id score student_id
--------------------------------
1 E1 90 1
2 E2 80 1
3 E2 70 2
4 E2 60 3
5 E2 50 4
6 E2 40 5
7 E2 30 6
现在要统计一下E2考试每个学生的成绩概况,一句SQL实现下面的结果集,可否?
注意,S5和S6在学生表里不存在,所以要特殊显示,并且统计时要排除
[score_id] exam_id score student_id student_name avg_score(本次考试平均分) below_count(这次考试比该考生分数低的人数)
--------------------------------------------------------------------------------------------------------------------------
2 E2 80 1 S1 65 2
3 E2 70 2 S2 65 1
4 E2 60 3 S3 65 0
5 E2 50 4 NULL NULL NULL
6 E2 40 5 NULL NULL NULL
------解决方案--------------------
1、你的结果少了一行
2、不得不说这个设计听扯淡的
----------------------------------------------------------------
-- Author :DBA_HuangZJ(发粪涂墙)
-- Date :2014-05-16 08:02:10