- 1、本文档共20页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
10使用多表连接查询数据解读
网络数据库应用SQL Sever 2008 姓名:李锋 授课说明 授课班级 P15软件技术2班 P15软件技术1班 授课时间 第05周 2016年09月26日 星期一3-4节 2016年09月27日 星期二3-4节 教学方法 情境教学任务驱动(李锋) 教 具 多媒体机房A703 多媒体机房A707 复习:5分钟 新课导入:3分钟 介绍重点难点:2分钟 内容讲解:45分钟 实训指导:30分钟 小结:5分钟 课程安排: 课程导入:使用Transact-SQL语言 情境目标: 了解Transact-SQL的用法和作用 学会并能根据需要灵活使用SELECT语句查询用户表的信息 使用INSERT向用户表输入数据 使用UPDATE修改用户表的数据 使用DELETE语句删除用户表的数据。 重点与难点: 根据需要灵活使用SELECT语句查询用户表的信息 学习情境2:使用Transact-SQL语言 任务1:概述 任务2:插入数据 任务3:更新数据 任务4:删除数据 任务5:检索数据概述 任务6:使用SELECT子句检索数据 任务7:排序 任务8:使用WHERE子句选择数据 任务9:使用聚合函数查询 任务10:使用分组查询 任务11:使用子查询 任务12:排序查询结果 任务13:使用多表连接查询数据 任务12 子查询技术 SELECT语句可以嵌套在其他许多语句中,这些语句包括SELECT、INSERT、UPDATE及DELETE等,这些嵌套的SELECT语句被称为子查询。 当一个查询依赖于另外一个查询结果时,那么可以使用子查询。在某些查询中,查询语句比较复杂不容易理解,因此为了把这些复杂的查询语句分解成多个比较简单的查询语句形式时常使用子查询方式。 使用子查询方式完成查询操作的技术是子查询技术。 【例2-37】使用了子查询技术外连接检索 USE AdventureWorks SELECT SalesOrderID, OrderDate, DueDate, ProductAmount = (SELECT COUNT(*) FROM Sales.SalesOrderDetail SSOD WHERE SSOD.SalesOrderID = SSOH.SalesOrderID) FROM Sales.SalesOrderHeader SSOH WHERE SalesOrderID IN (SELECT TOP (3) SalesOrderID FROM Sales.SalesOrderDetail GROUP BY SalesOrderID ORDER BY COUNT(SalesOrderID) DESC) 任务13 集合运算技术 查询语句的结果集往往是一个包含了多行数据集合。集合之间可以进行并、差、交等运算。 在Microsoft SQL Server 2005系统中,两个查询语句之间也可以进行集合运算。 其中,UNION运算符表示并集运算,EXCEPT运算符从左查询中返回右查询中没有找到的重复值,INTERSECT运算符则返回左右两个查询语句都包含的所有非重复值。 需要注意的是,在集合运算时,所有查询语句中的列的数量和顺序必须相同,且数据类型必须兼容。 【例2-38】执行集合运算 USE ElecTravelCom SELECT * FROM T1 SELECT * FROM T2 【例2-38】执行集合运算 USE ElecTravelCom SELECT col1 FROM T1 EXCEPT SELECT col1 FROM T2 任务14 公用表表达式 在Microsoft SQL Server 2005系统中,可以使用公用表表达式(common table expression,CTE)。CTE是定义在SELECT、INSERT、UPDATE或DELETE语句中的临时命名的结果集,CTE也可以用在视图的定义中。在CTE中可以包括对自身的引用,因此这种表达式也被称为递归CTE。 在SELECT语句中,可以使用WITH子句定义CTE。CTE的基本语法形式如下: WITH expression_name (column_name, …) AS (CTE_query_definition) 【例2-39】定义和使用CTE USE AdventureWorks; WITH AmountOrder(SalesPersonID, AmountOrderOfPerson, MaxDate
文档评论(0)