2016-06-21 61 views
-1

enter image description here我的查询工作不

大家好,我试图做这2个查询,但我似乎无法得到他们的权利。我不确定我做错了什么,任何人都可以帮助我?

a。列出所有商学院学生的所有成绩。查询结果将显示SID名称学院年,期限UnitCode

我到目前为止有:

SELECT 
    Student.SID, 
    Student.Name, 
    Student.Faculty, 
    Result.Year, 
    Result.Term, 
    Result.UnitCode, 
    Result.Grade 
FROM Result, Student 
WHERE Student.Faculty = 'Business' 

当这执行它打印重复的数据,我该如何解决这个问题?

b。按年,学期和UnitCode列出所有学生组的所有成绩。查询结果将显示SID名称学院年,期限UnitCode级。
到目前为止,我已经得到了什么:

SELECT 
    Student.SID, 
    Student.Name, 
    Student.Faculty, 
    Result.Year, 
    Result.Term, 
    Result.UnitCode, 
    Result.Grade 
FROM Result, Student 
GROUP BY Result.Year, Result.Term, Result.UnitCode 

回答

0

一个。你必须加入学生和结果表,如

SELECT * FROM 
Result r JOIN Student s ON r.SID = s.SID 
WHERE s.Faculty = 'Business' 

b。问题不明确或期望错误。不能显示在组子句或集合功能,如(SID,名称等)列,但仅列(如求和(SID)。

1

a)选择 s.SID, s.Name, s.Faculty , r.Year, r.Term, r.UnitCode, r.Grade 从学生的内心联接的结果为r上s.SID = r.SID WHERE s.Faculty = '业务'