- 1、本文档共85页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3.3.1 等值与非等值连接 自然连接 SQL不直接支持自然连接,完成自然连接的方法是在等值连接的基础上消除重复列 [例3.30] 实现成绩表Score和课程表Course的自然连接。 SELECT studentNo, a.courseNo, score, courseName, creditHour, courseHour, priorCourse FROM Score a, Course b WHERE a.courseNo=b.courseNo // 表a与表b的连接条件 本例课程编号在两个关系中同时出现,但在SELECT子句中仅需出现1次,因此使用a.courseNo,也可以使用b.courseNo。其他列名是唯一的,不需要加上元组变量 * 3.3.1 等值与非等值连接 非等值连接 非等值连接使用的比较少。 在关系代数部分已经举过了一个非等值连接的例子(P61-63,例2.16),这里就不再举例了。 在数据库ScoreDB中,查找课程号为“AC001”课程的考试中比学号为“0703045”的学生考得更好的所有学生的姓名和成绩。 * 3.3.2 自表连接 若某个表与自己进行连接,称为自表连接 [例3.31] 查找同时选修了编号为“001”和“002”课程的同学学号、姓名、课程号和相应成绩,并按学号排序输出。 学生姓名在学生表中,FROM子句必须包含学生表(取别名为a) 可以考虑两个成绩表,分别记为b和c b表用于查询选修了编号为“001”课程的同学 c表用于查询选修了编号为“002”课程的同学 FROM子句还必须包含两个成绩表b和c,且在WHERE子句中包含两个选择条件: b.courseNo=001 AND c.courseNo=002 * 3.3.2 自表连接 一方面,成绩表b与成绩表c在学号上做等值连接(自表连接),如果连接成功,表示学生同时选修了编号为“001”和“002”的课程 另一方面,学生表与成绩表b (或成绩表c)在学号上做等值连接。WHERE子句包含两个连接条件: b.studentNo=c.studentNo AND a.studentNo=b.studentNo 本查询语句为: SELECT a.studentNo, studentName, b.courseNo, b.score, c.courseNo, c.score FROM Student a, Score b, Score c WHERE b.courseNo=001 AND c.courseNo=002 AND a.studentNo=b.studentNo AND b.studentNo=c.studentNo ORDER BY a.studentNo 本查询结果与例3.29相同 在该查询中,FROM子句后面包含了两个参与自表连接的成绩表Score,必须定义元组变量加以区分 自表连接的条件是b.studentNo=c.studentNo * 3.3.2 自表连接 [例3.32] 在学生表Student中查找与“李宏冰”同学在同一个班的同学姓名、班级编号和出生日期。 SELECT a.studentName, a.classNo, a.birthday FROM Student a, Student b WHERE b.studentName=李宏冰 AND a.classNo=b.classNo 或 SELECT a.studentName, a.classNo, a.birthday FROM Student a, ( SELECT * FROM Student WHERE studentName=李宏冰 ) b WHERE a.classNo=b.classNo * 3.3.3 外连接 在一般的连接中,只有满足连接条件的元组才被检索出来,对于没有满足连接条件的元组是不作为结果被检索出来的。 [例3.33] 查询每个班级的班级名称、所属学院、学生学号、学生姓名,按班级名称排序输出。 SELECT className, institute, studentNo, studentName FROM Class a, Student b WHERE a.classNo=b.classNo ORDER BY className * 3.3.3 外连接 从查询结果中可以看出: 班级表中的“注册会计08_01班”、“注册会计08_03班”以及“金融管理07_01班”这3个班没有出现在查询结果中,原因是这3个班没有学生 在实际应用中,往往需要将不满足连接条件的元组也检索出来,只是在相应的位置用空值替代
您可能关注的文档
- 箱梁首件方案解决方案.doc
- 箱梁预制安全技术交底解决方案.doc
- 箱梁预制技术方案(拟定)解决方案.doc
- 箱梁支架搭设技术交底(三级)解决方案.doc
- 校园定向运动要点分析.pptx
- 箱式逆变器设备技术协议解决方案.doc
- PICC置管健康教育2015.12.16解答.ppt
- 箱式热处理电阻炉设计解决方案.doc
- 箱型基础工程技术交底记录解决方案.doc
- PICC置管的护理解答.ppt
- 北师大版(2024)八年级数学上册课件 3.2 平面直角坐标系 第2课时 点的坐标特征.pptx
- 北师大版(2024)八年级数学上册课件 3.2 平面直角坐标系 第3课时 建立适当的平面直角坐标系.pptx
- 北师大版(2024)八年级数学上册课件 4.3 一次函数的图象 第1课时 正比例函数的图象及性质.pptx
- (人教A版数学选择性必修三)讲义第15讲7.1.1条件概率(学生版+解析).docx
- (人教A版数学选择性必修三)讲义第19讲8.1成对数据的统计相关性(8.1.1变量的相关关系+8.1.2样本相关系数)(学生版+解析).docx
- 北师大版(2024)八年级数学上册课件 5.2 二元一次方程组的解法 第2课时 加减消元法.pptx
- (人教A版数学选择性必修一)2025年秋季学期讲义第01讲1.1.1空间向量及其线性运算(学生版+教师版).docx
- 北师大版(2024)八年级数学上册课件 5.2 二元一次方程组的解法 第1课时 代入消元法.pptx
- 北师大版(2024)八年级数学上册课件 5.3 二元一次方程组的应用 第3课时 二元一次方程组的应用(3).pptx
- 北师大版(2024)八年级数学上册课件 5.4 二元一次方程与一次函数 第2课时 用二元一次方程组确定一次函数表达式.pptx
文档评论(0)