SQL,如何获得最低的平均值?

时间:2015-03-04 09:09:05

标签: sql oracle

我有以下数据库

Student (NumStu, Name, Surname, BirthDate, Street, PC, City)
Teach (CodeTeach, Label, Coef)
Exam (numexam, DateExam, Place, #CodeTeach)
Notation (#NumStu, #NumTeach, Note)

我希望得到计算机科学教学中平均成绩最低的学生名单。

怎么做?

2 个答案:

答案 0 :(得分:1)

您是否需要选择所有按计算机科学教学排序的学生或只选择1名最低年级的学生?您应该添加更多说明。

如果学生被插入Student表,他们在表Teach中的教学成绩应该是这样的(我可以在你提供更详细的描述后正确帮助你):

SELECT S.NumStu, S.Name, S.Surname, S.BirthDate, S.Street, S.PC, S.City, T.ComputerScience
FROM Student AS S
INNER JOIN Teach AS T
ON T.AssociatedColumn = S.AssociatedColumn 
ORDER BY T.ComputerScience -- Here you order students list from lowest grade (ascending)

答案 1 :(得分:0)

SELECT *
FROM Student, Notation
ON Student.NumStu = Notation.NumStu
WHERE Notation.Note =    
(
    SELECT MIN(AVG(Note))
    FROM Notation
    GROUP BY NumStu
)

说明:当Note与等于Note of Average的最小值时,此请求将显示Student和Notation表中的所有内容。

我不确定它会起作用,等待反馈。

P.-S:我也是法国人