第17讲 数据库的连接查询和子查询

第17讲 数据库的连接查询和子查询

ID:19915267

大小:326.50 KB

页数:28页

时间:2018-10-07

第17讲  数据库的连接查询和子查询_第1页
第17讲  数据库的连接查询和子查询_第2页
第17讲  数据库的连接查询和子查询_第3页
第17讲  数据库的连接查询和子查询_第4页
第17讲  数据库的连接查询和子查询_第5页
资源描述:

《第17讲 数据库的连接查询和子查询》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章数据查询——连接查询和子查询主讲人:段利文第17讲复习:数据库的投影运算(选择列)用什么子句实现?数据库的选择运算(选择行)用什么子句实现?分类汇总用什么子句实现?对分类汇总生成的组进行条件筛选用什么子句?明细汇总用什么子句实现?compute…by子句必须与什么子句连用?select子句where子句groupby子句compute子句orderby子句having子句复习:数据汇总查询的语法格式用聚合函数、groupby子句、compute…by子句select列名表from表名[,……n][where条件][groupby列名][ha

2、ving逻辑表达式][orderby列名][compute聚集函数[by列名]]投影运算选择运算分类汇总连接运算排序明细汇总第5章数据查询——连接查询和子查询学习目标认知目标:了解数据库的连接运算了解子查询的基本含义能力目标:掌握连接查询的方法(重点、难点)理解子查询的方法(难点)一、连接查询(多表查询)连接查询的含义:从多个相关的表中查询数据(用from子句实现)。连接运算:把多个表中的行按给定的条件进行拼接从而形成新表。连接运算的类型:内连接(掌握)外连接(左外连接、右外连接、全外连接)(理解)自连接(理解)无限制连接(了解,略)一、连接查询

3、(多表查询)1.内连接(自然连接)含义:将多个表中的共享列值进行比较,把表中满足连接条件的行组合起来,作为查询结果。例如:请将xsqk和xs_kc表进行连接。内连接查询结果思考:这两张表为什么可以进行连接?连接的条件应该是什么?一、连接查询(多表查询)1.内连接(自然连接)语法格式有两种:ANSI语法形式:select列名表from表1[inner]join表2on表1.列名1=表2.列名2SQLServer语法形式:select列名表from表1,表2where表1.列名1=表2.列名2表示内连接(可省略)连接条件:当两个表中的列名相同时,需加

4、上表名修饰;否则,可省去表名。连接条件一、连接查询(多表查询)1.内连接(自然连接)实例1:查询不及格学生的学号、姓名、课程号、成绩信息(教材P113)。分析:确定要查询内容的来源。确定连接条件(要查询的表通过什么列名相关联)。selectxsqk.学号,姓名,课程号,成绩fromxsqk,xs_kcwherexsqk.学号=xs_kc.学号and成绩<60为什么要加上表名前缀?而其它字段前不要?因学号在两个表中都有,所以需指明所属的表名。一、连接查询(多表查询)1.内连接(自然连接)课堂练习1:查询不及格学生的学号、课程名、授课教师、开课学期的

5、信息。select学号,xs_kc.课程号,授课教师,开课学期,成绩fromkc,xs_kcwherexs_kc.课程号=kc.课程号and成绩<60select学号,xs_kc.课程号,授课教师,开课学期,成绩fromkcjoinxs_kconxs_kc.课程号=kc.课程号and成绩<60请思考:xsqk、kc、xs_kc三张表应如何连接?一、连接查询(多表查询)2.外连接含义:在内连接中,只把两个表中满足条件的行显示出来。而在外连接中,可以将不满足条件的行也显示出来。外连接的类型左外连接:保留左边表中不匹配的行。右外连接:保留右边表中不匹配

6、的行。全外连接:保留两表中不匹配的行。一、连接查询(多表查询)2.外连接左外连接的查询结果:右外连接的查询结果:左外连接查询结果右外连接查询结果一、连接查询(多表查询)2.外连接全外连接的查询结果:全外连接查询结果一、连接查询(多表查询)2.外连接—(1)左外连接ANSI语法格式select列名表from表1left[outer]join表2on表1.列名1=表2.列名2SQLServer语法格式select列名表from表1,表2where表1.列名1*=表2.列名2实例:阅读教材P128例5-36。一、连接查询(多表查询)2.外连接—(2)右

7、外连接ANSI语法格式:select列名表from表1right[outer]join表2on表1.列名1=表2.列名2SQLServer语法格式:select列名表from表1,表2where表1.列名1=*表2.列名2实例:阅读教材P128例5-37。一、连接查询(多表查询)2.外连接—(3)全外连接语法格式(只有一种):select列名表from表1full[outer]join表2on表1.列名1=表2.列名2说明:只有ANSI语法格式SQLServer无全外连接语句。实例:阅读教材P130例5-38。一、连接查询(多表查询)3.自连接含

8、义:将同一个表的不同行连接起来。自连接可以看作一张表的两个副本之间进行的连接。要求:在自连接中,必须为表指定两个别名,使之在逻辑上成为两

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

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

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