我的查询不起作用

时间:2016-06-21 22:30:40

标签: sql subquery libreoffice-base

enter image description here

嘿大家我正在尝试做这两个查询,但我似乎无法让他们正确。我不确定我做错了什么,有人能帮助我吗?

一个。列出所有商学院学生的所有成绩。查询结果将显示 SID 名称教师年度期限 UnitCode 成绩

到目前为止我所拥有的:

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

执行此操作时会打印重复数据,我该如何解决?

湾按年份,期限和单位代码列出所有学生组的所有结果。查询结果将显示 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

2 个答案:

答案 0 :(得分:1)

a)选择     s.SID,     s.Name,     s.Faculty,     r.Year,     r.Term,     r.UnitCode,     r.Grade FROM Student as s inner join结果为r on s.SID = r.SID 在哪里。教师='商业'

答案 1 :(得分:0)

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

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

湾问题不明确或期望是错误的。您不能显示(Sid,name等)列,只能显示Group子句中的列或聚合函数(如Sum(Sid)。