4.2联接查询 (课件)《网站数据库应用技术-SQL Server2005》同步教学(机械工业出版社)

2024-03-25
| 18页
| 40人阅读
| 0人下载
普通

内容正文:

4.2联接查询 联接查询 如果一个查询同时涉及两个以上的表,则称之为联接查询 内联接 外联接 交叉联接 学习要点 联接查询 内联接(Inner Join) 在 SQL-92 标准中,内联接可在 FROM 或 WHERE 子句中指定 (建议使用后者) 等值联接 非等值联接 自身联接 联接查询 内联接 等值联接 【例4-24】查询每个学生的S_no(学号)、S_name(姓名)、S_class(班级)及其所选修课程的成绩情况 分析: 内联接 Information表 Score表 S_no S_name S_class c_no grade semester 值相等 SELECT Information.S_no, Information.S_name, S_class, c_no, semester, grade FROM Information JOIN Score ON Information.S_no=Score.S_no 返回结果 连接score表 “=”即为等值连接 等值联接 内联接 非等值联接 使用>、<、>=、<=等运算符作为联接条件的联接称为非等值联接。 但在实际应用中很少使用不等联接 (< >),并且通常不等联接只有与自联接同时使用才有意义,如【例4-25】所示 内联接 内联接 自身联接 一个表与其自己进行联接,这种联接称为表的自身联接 自身联接一般很少仅用于查询数据,主要用于INSERT,UPDATE语句中对一个表中满足特定条件的行进行操作操作的情况下 【例4-25】 内联接 内联接 【例4-25】 查询比“王玉梅”年龄大或同龄的学生的学号、姓名和出生年份,结果按出生年月升序排列 返回结果如下: SELECT X2.S_no 学号, X2.S_name 姓名, year(X2.S_birth) 出生年份 FROM Information X1 JOIN Information X2 ON X1.S_name='王玉梅' AND X2.S_birth<=X1.S_birth ORDER By X2.S_birth 自身联接 联接查询 外联接(Outer Join) 如果以Information表为主体列出每个学生的基本情况及其选课情况,若某个学生没有选课,则只输出其基本情况信息,其选课信息为空值即可,这时就需要使用外联接(Outer Join) 左外联接 右外联接 完全外部联接 联接查询 外联接 左外联接(匹配左表的所有行) 【例4-26】将Information表和Score表之间的左向外联接包括所有学生的信息,包括没有进行选课的学生 返回结果 外联接 SELECT Information.S_no,S_name,S_sex,S_class, C_no,Grade FROM Information LEFT OUTER JOIN Score on Information.S_no=Score.S_no Join之左侧表:information 左外联接 外联接 右外联接(匹配右表的所有行) 【例4-27】在Information和Score表之间的右向外联接将包括所有学生的成绩 返回结果 外联接 SELECT Information.S_no,S_name,S_sex,S_class,C_no,Grade FROM Information RIGHT OUTER JOIN Score on Information.S_no=Score.S_no Join之右侧表:score 右外联接 外联接 完全外部联接(显示所有行,不管匹配) 【例4-28】在Information和Score表之间的建立完整外部联接 返回结果 外联接 SELECT Information.S_no,S_name,S_sex,S_class,C_no,Grade FROM Information FULL OUTER JOIN Score on Information.S_no=Score.S_no 完全外部联接 联接查询 交叉联接(卡氏积联接 ) 卡氏积是不带联接谓词的联接。 两个表的卡氏积即是两表中记录的交叉乘积 也即其中一表中的每一记录都要与另一表中的每一记录作拼接,因此结果表往往很大。 【例4-29】 联接查询 交叉联接 【例4-29】 对学生信息表和成绩表进行交叉联接 交叉联接 SELECT * FROM Information CROSS JOIN Score SELECT Information.* ,Score.* FROM Information,Score 感谢聆听 $$

资源预览图

4.2联接查询 (课件)《网站数据库应用技术-SQL Server2005》同步教学(机械工业出版社)
1
4.2联接查询 (课件)《网站数据库应用技术-SQL Server2005》同步教学(机械工业出版社)
2
4.2联接查询 (课件)《网站数据库应用技术-SQL Server2005》同步教学(机械工业出版社)
3
4.2联接查询 (课件)《网站数据库应用技术-SQL Server2005》同步教学(机械工业出版社)
4
4.2联接查询 (课件)《网站数据库应用技术-SQL Server2005》同步教学(机械工业出版社)
5
4.2联接查询 (课件)《网站数据库应用技术-SQL Server2005》同步教学(机械工业出版社)
6
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。