教学管理”数据库中有学生表、课程表和选课表,如何创建数据库反应三张表之间的联系?

教学管理”数据库中有学生表、课程表和选课表,如何创建数据库反应三张表之间的联系?,第1张

关于反映这三张表中数据之间的联系,提供三方面信息以供参考:

1、表关系分析:学生表与课程表是多对多的关系,建立一张关联表也就是选课表来将学生表与程表产生关联。

2、数据库表分析:学生表包括学生相关信息,课程表包括课程相关信息,选课表放其他两张表的各一个字段(可以维护唯一性,比如说主键)。

3、实体分析:包含学生和课程两个实体,在每个实体中加入另外一个实体的集合。

select a.sno from sc as a,

(select cno from sc where sno=7) as b

where a.cno=b.cno

group by a.sno having count(*)=(select count(*) from sc where sno=7)

不用exists貌似比较麻烦

给你说一下

(select cno from sc where sno=7) as b是查出7号学生选的课程

关联查询是查出和7号学生选过有相同的人

最后group by ……那一堆表示,条数跟7号学生选课的条数一样的,也就是选了7号学生全部课程的人


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6474000.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-23
下一篇 2023-03-23

发表评论

登录后才能评论

评论列表(0条)

保存