第三章SQL语言及T-SQL的应用ppt课件.ppt

第三章SQL语言及T-SQL的应用ppt课件.ppt

ID:59221598

大小:2.14 MB

页数:86页

时间:2020-09-26

第三章SQL语言及T-SQL的应用ppt课件.ppt_第1页
第三章SQL语言及T-SQL的应用ppt课件.ppt_第2页
第三章SQL语言及T-SQL的应用ppt课件.ppt_第3页
第三章SQL语言及T-SQL的应用ppt课件.ppt_第4页
第三章SQL语言及T-SQL的应用ppt课件.ppt_第5页
资源描述:

《第三章SQL语言及T-SQL的应用ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第三章SQL语言及T-SQL的应用(2)内容概要: 3.1关系数据库的标准语言SQL3.2数据定义3.3数据查询语言(重点)3.4数据操纵语言(重点)实例分析:StudentCourseSC返回3.3.3多表查询(连接查询)连接查询同时涉及多个表的查询称为连接查询。用来连接两个表的条件称为连接条件或连接谓词一般格式:[<表名1>.]<列名1><比较运算符>[<表名2>.]<列名2>比较运算符:=、>、<、>=、<=、!=[<表名1>.]<列名1>BETWEEN[<表名2>.]<列名2>AND[<表名2>.]<列名3>☆连接字段▼连接谓词中的列

2、名称为连接字段。▼连接条件中的各连接字段类型必须是可比的,但不必是相同的。☆DBMS执行连接操作的过程:嵌套循环法(NESTED-LOOP)▼首先在表1中找到第一个元组,然后从头开始扫描表2,逐一查找满足连接件的元组,找到后就将表1中的第一个元组与该元组拼接起来,形成结果表中一个元组。▼表2全部查找完后,再找表1中第二个元组,然后再从头开始扫描表2,逐一查找满足连接条件的元组,找到后就将表1中的第二个元组与该元组拼接起来,形成结果表中一个元组。▼重复上述操作,直到表1中的全部元组都处理完毕。☆SQL中连接查询的主要类型:▼广义笛卡尔积▼等值连接

3、▼自然连接▼非等值连接查询▼自身连接查询▼外连接查询▼复合条件连接查询一、广义笛卡尔积不带连接谓词的连接很少使用例1:SELECTStudent.*,SC.*FROMStudent,SCT-SQL:格式一:SELECT列名列表FROM表名1CROSSJOIN表名2例:select*fromstudentcrossjoinsc或selectstudent.*,sc.*FROMSTUDENTcrossjoinsc格式二:SELECT列名列表FROM表名1,表名2返回二、等值与非等值连接查询分类:等值连接、自然连接、非等值连接*等值连接:[<表名1>

4、.]<列名1>=[<表名2>.]<列名2>若子句中引用表1和表2中同名属性时,都必须加表名前缀。引用唯一属性名时可以加也可以省略表名前缀。[例2]查询每个学生及其选修课程的情况。SELECTStudent.*,SC.*FROMStudent,SCWHEREStudent.Sno=SC.Sno;结果表返回☆T-SQL中等值连接操作的格式:SELECT列名列表FROM表名1,表名2WHERE表名1.列名=表名2.列名或SELECT列名列表FROM表名1[INNER]JOIN表名2ON表名1.列名=表名2.列名如:selectstudent.*,sc

5、.*fromstudentinnerjoinsconstudent.sno=sc.sno*自然连接,删去重复的属性列。[例3]对[例2]用自然连接完成。SELECTStudent.Sno,Sname,Ssex,birthday,Sdept,Cno,GradeFROMStudent,SCWHEREStudent.Sno=SC.Sno;返回*非等值连接[<表名1>.]<列名1><比较运算符>[<表名2>.]<列名2>比较运算符:>、<、>=、<=、!=略!三、自身连接◆一个表与其自己进行连接,称为表的自身连接。◆需要给表起别名以示区别。◆由于所有属

6、性名都是同名属性,因此必须使用别名前缀。[例4]查询每一门课的间接先行课(即先行课的先行课)SELECTFIR.Cno,SEC.CpnoFROMCourseFIR,CourseSECWHEREFIR.Cpno=SEC.Cno;T-SQL中方法一同上、方法二:SELECTFIR.Cno,SEC.CpnoFROMCourseasFIR,CourseasSECWHEREFIR.Cpno=SEC.Cno;返回FIR表(Course表)CnoCnameCpnoCcredit001数据库原理0054002高数2003信息系统0014004操作系统00630

7、05数据结构0074006数据处理2007PASCAL语言0064SEC表(Course表)CnoCnameCpnoCcredit001数据库原理0054002高数2003信息系统0014004操作系统0063005数据结构0074006数据处理2007PASCAL语言0064查询结果cnocpno001007003005004NULL005006007NULL四、外连接(OuterJoin)◆在表名后面加外连接操作符(*)或(+)指定非主体表。◆非主体表有一“万能”的虚行,该行全部由空值组成。◆虚行可以和主体表中所有不满足连接条件的元组进行连

8、接。◆由于虚行各列全部是空值,因此与虚行连接的结果中,来自非主体表的属性值全部是空值。◆外连接符*出现在连接条件的右边,称其为左外连接。若在左边,则称

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。