第6章高级Transact-SQL-精品文档资料整理.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《第6章高级Transact-SQL-精品文档资料整理.ppt》由会员分享,可在线阅读,更多相关《第6章高级Transact-SQL-精品文档资料整理.ppt(28页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第6 6章章 高级高级Transact-SQLTransact-SQL 高高级的的Transact-SQL可以完成一些可以完成一些诸如多表、多重条件如多表、多重条件等基本等基本语句不能完成的操作。句不能完成的操作。这些高些高级语句都是从基本句都是从基本语句句变化而来的,所以不会化而来的,所以不会过于复于复杂。只要熟。只要熟练掌握了基本掌握了基本语句,高句,高级的的SQL语句也很容易掌握。句也很容易掌握。6.1 6.1 子查询子查询 查询数据是数据数据是数据库操作中最操作中最为重要的操作。子重要的操作。子查询是是一个嵌套在一个嵌套在SELECT、INSERT、UPDATE、DELETE语句或其
2、他子句或其他子查询中的中的查询。子。子查询的的结果被用来向其他果被用来向其他查询语句提供数据来源。任何允句提供数据来源。任何允许使用表达式的地方都可以使用表达式的地方都可以使用子使用子查询。子。子查询也称也称为内部内部查询或内部或内部选择,而包含,而包含子子查询的的语句也称句也称为外部外部查询或外部或外部选择。高。高级子子查询中中给出了更多的出了更多的语句,以句,以满足不同的需要。足不同的需要。读者可以者可以结合合这些些语句和基本句和基本语句配合使用,以句配合使用,以满足足实际工作与学工作与学习的需的需要。要。6.1.1 IN6.1.1 IN子句子句 在在查询中,有中,有时只要只要满足多个条件
3、中的一个条件即可,足多个条件中的一个条件即可,此此时可以使用可以使用IN子句。使用子句。使用时将所有的条件在将所有的条件在IN运算符后面列运算符后面列出,并以括号括起来,各条件以逗号分隔。出,并以括号括起来,各条件以逗号分隔。6.1.2 NOT IN6.1.2 NOT IN子句子句 与与IN运算符相运算符相对的的还有有NOT IN运算符,运算符,结果只列出不果只列出不位于括号中的一系列位于括号中的一系列值的的记录。6.1.3 COMPUTE6.1.3 COMPUTE子句子句 COMPUTE子句可以在子句可以在结果集内生成小果集内生成小计。小。小计就是在就是在财务报表、表、银行行账单中常中常见的
4、的对一批数据的一批数据的汇总。6.1.4 COMPUTE BY6.1.4 COMPUTE BY子句子句 COMPUTE BY子句可以子句可以实现对分分类数据数据进行行汇总小小计。使用使用该子句的限制条件很多:小子句的限制条件很多:小计的字段必的字段必须是是ORDER BY语句后出句后出现的字段子集,并且的字段子集,并且COMPUTE BY语句后出句后出现的字段必的字段必须和和ORDER BY语句后面的字段具有相同的出句后面的字段具有相同的出现顺序,并以相序,并以相同的表达式开同的表达式开头。6.1.5 EXISTS6.1.5 EXISTS子句子句使用使用EXISTS子句可以子句可以测试集合是否
5、集合是否为空。空。该子句用于子句用于子子查询的的结果判断。果判断。6.1.5 NOT EXISTS6.1.5 NOT EXISTS子句子句NOT EXISTS子句也用于子句也用于测试一个集合是否一个集合是否为空,但是空,但是当当结果果为空空时才会才会继续其他操作。其他操作。6.1.6 ALL6.1.6 ALL、ANYANY和和SOMESOME子句子句 ANY和和SOME关关键字的含字的含义相同,都是指在相同,都是指在进行比行比较运算运算时只要子只要子查询有一行使有一行使结果果为真,真,结果就果就为真。而真。而ALL关关键字是需要所有数据行都使字是需要所有数据行都使结果果为真,真,结果才果才为真
6、。真。6.2 APPLY6.2 APPLY运算符运算符APPLY运算符可以运算符可以实现两个两个查询结果的全果的全组合合结果,果,又称又称为交叉集合。例如两个数据交叉集合。例如两个数据组合合(A,B)、(A,B),它,它们的的交叉集合交叉集合结果果为(AA,AB,AA,AB)。APPLY分分为CROSS APPLY和和OUTER APPLY两种使用方式。两种使用方式。6.2.1 CROSS APPLY6.2.1 CROSS APPLY顾名思名思义,CROSS APPLY就是把所有有交叉的数据展就是把所有有交叉的数据展示出来。示出来。6.2.2 OUTER APPLY6.2.2 OUTER AP
7、PLY与与CROSS APLLY不同的是,不同的是,OUTER APPLY将不管数将不管数据是否有交叉,全部据是否有交叉,全部显示要配示要配对的数据。的数据。6.3 6.3 排名函数排名函数排名函数完成排名函数完成对数据在排序后加上序号的功能。它提供数据在排序后加上序号的功能。它提供了了ROW_NUMBER、RANK、DENSE_RANK、NTILE函数函数来来满足排名的要求。足排名的要求。6.3.1 ROW_NUMBER6.3.1 ROW_NUMBERROW_NUMBER函数会根据参数要求的排序函数会根据参数要求的排序为每条每条记录返回一个不断返回一个不断递增的整数增的整数值。6.3.2 R
8、ANK6.3.2 RANKRANK函数与函数与ROW_NUMBER函数函数类似,因似,因为它它们都返都返回一个基排序的序号,但是回一个基排序的序号,但是这些序号不一定是唯一的。排列些序号不一定是唯一的。排列值对于所提供的于所提供的ORDER BY子句中的重复子句中的重复结果而言也是重复果而言也是重复的,而且唯一性的,而且唯一性仅仅基于基于ORDER BY列表中的唯一列表中的唯一值。这些些函数用不同的方法来函数用不同的方法来处理重复的理重复的值。函数。函数RANK()保留列表中保留列表中行的位置序号,行的位置序号,对于每个重复的于每个重复的值,该函数会跳函数会跳过下面与其下面与其相相邻的的值,于
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第6章 高级Transact-SQL-精品文档资料整理 高级 Transact SQL 精品 文档 资料 整理
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内