至少选修c1和c2的学生编号:
select sno(学生的学号) from sc(学生选课表) group by sno having count(*)>1
SQL结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同的结构化查询语言作为数据输入与管理的接口。SQL结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。
扩展资料:
设关系R和关系S具有相同的目n,且相应的属性取自同一个域,则关系R与关系S的差由属于R而不属于S的所有元组组成。其结果关系仍为n目关系。记作:
R-S={t|t∈R∧t∉S}
设关系R和关系S具有相同的目n,且相应的属性取自同一个域,则关系R与关系S的交由既属于R又属于S的元组组成。其结果关系仍为n目关系。记作:
R∩S={t|t∈R∧t∈S}
这里的笛卡尔积严格地讲是广义笛卡尔积(ExtendedCartesianProduct)。在不会出现混淆的情况下广义笛卡尔积也称为笛卡尔积。
两个分别为n目和m目的关系R和S的广义笛卡尔积是一个(n+m)列的元组的集合。元组的前n列是关系R的一个元组,后m列是关系S的一个元组。若R有k1个元组,S有k2个元组,则关系R和关系S的广义笛卡尔积有k1×k2个元组。
参考资料来源:百度百科-关系代数
2013-07-10
FROM StudentClassMapping m
INNER JOIN Calss c ON c.Id = m.ClassId
WHERE c.Type = 0--Type代表课程类型,这里假设0为选修课。
AND Count(*) >= 2
GROUP BY m.StudentID
--看懂意思就行了,不知道表结构,我凭想象瞎写了一个,各知识点应该都涵盖了。
推荐于2017-12-15
group by sno having count(*)>1
2016-03-30
比如选修课表2列: 学号, 选修课程
select 学号,
count(选修课程)
from 选修课
having count(选修课程) >= 2
group by 学号