SQL Select(仅满足所有搜索条件的名称)

时间:2015-12-10 22:58:19

标签: sql oracle select

我的任务是说我必须选择所有参加课程1并且不参加课程3的学生的名字和姓氏......只有那些人符合这些要求。如何选择并在关系代数中显示它?提前谢谢。

2 个答案:

答案 0 :(得分:0)

一般情况下这是......

SELECT firstName, lastName 
FROM classTbl
WHERE courseNo = course1
AND courseNo <> course3 

答案 1 :(得分:0)

您的数据库有一个表格,学生和他们的班级相关。 使用减去找到你想要的学生:

SELECT fname, lname FROM YOURTABLE WHERE course = 'Course1'
minus
SELECT fname, lname FROM YOURTABLE WHERE course = 'Course3'

通过这种方式,如果学生在课程1中,则将其包含在结果中,如果他们在课程3中,则将其排除在结果之外。您将留在课程1而不是课程3的学生

我的猜测是关系代数看起来像这样:

∏ fname, lname ( σ course = "course1" (YOURTABLE) ) - ∏ fname, lname ( σ course = "course3" (YOURTABLE) )