基础教程 7.pptVIP

  1. 1、本文档共88页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基础教程 7

7.10 分组技术 聚合函数只能产生一个单一的汇总数据,使用GROUP BY子句,则可以生成分组的汇总数据。GROUP BY子句把数据组织起来分成组。一般情况下,可以根据表中的某一列进行分组,通过使用聚合函数,对每一个组可以产生聚合值。如果需要过滤某些分组,可以使用HAVING子句。分组技术是指使用GROUP BY子句完成分组操作的技术。 * 第*页 普通分组技术 GROUP BY子句、HAVING子句和聚合函数一起完成对每一个组生成一行和一个汇总值。在使用GROUP BY子句和HAVING子句的过程中,要求考虑下列一些条件。 * 第*页 没有分组条件的分组语句 * 第*页 有分组条件的分组语句 * 第*页 ROLLUP和CUBE关键字 在GROUP BY子句中,可以使用ROLLUP或CUBE关键字获得附加的分组数据,这些附加的分组数据是通过各组之间的组合得到的。使用ROLLUP关键字可以得到各组的单项组合,使用CUBE关键字可以得到各组之间的任意组合。在结果集中,通过组组合起来的组名称是NULL,可以使用GROUPING函数来判断该组是否是经过组合得到的。 * 第*页 简单的分组 * 第*页 使用ROLLUP关键字的分组 * 第*页 使用CUBE关键字的分组 * 第*页 7.11 连接技术 实现从两个或两个以上表中检索数据且结果集中出现的列来自于两个或两个以上表中的检索操作被称为连接技术,或者说连接技术是指对两个表或两个以上表中数据执行乘积运算的技术。在设计表时,为了提高表的设计质量,经常把相关数据分散到不同的表中。但是,在使用数据时,需要把这些数据集中在一个查询语句中。 * 第*页 交叉连接 * 第*页 内连接 * 第*页 左外连接 * 第*页 7.12 子查询技术 SELECT语句可以嵌套在其他语句中,这些语句包括SELECT、INSERT、UPDATE或DELETE等,这些嵌套的SELECT语句被称为子查询。当一个查询依赖于另外一个查询结果时,则可以使用子查询。在某些查询中,查询语句比较复杂不容易理解,因此可以使用子查询方式把这些复杂的查询语句分解成多个比较简单的查询语句形式。使用子查询方式完成查询操作的技术是子查询技术。 * 第*页 在WHERE子句中使用子查询 * 第*页 7.13 集合运算技术 查询语句的结果集往往是一个包含了多行数据的集合。集合之间可以进行并、差、交等运算。在Microsoft SQL Server 2008系统中,两个查询语句之间也可以进行集合运算。其中,UNION运算符表示并集运算,EXCEPT运算符从左查询中返回右查询中没有找到的重复值,INTERSECT运算符则返回左右两个查询语句都包含的所有非重复值。需要注意的是,在集合运算时,所有查询语句中列的数量和顺序必须相同,且数据类型必须兼容。 * 第*页 T1表和T2表 * 第*页 使用EXCEPT运算符 * 第*页 7.14 公用表表达式 在Microsoft SQL Server 2008系统中,可以使用公用表表达式(common table expression,CTE)。CTE是定义在SELECT、INSERT、UPDATE或DELETE语句中临时命名的结果集,CTE也可以用在视图的定义中。在CTE中,可以包括对自身的引用,因此这种表达式也被称为递归CTE。 * 第*页 使用简单的CTE * 第*页 使用递归的CTE * 第*页 7.15 PIVOT和UNPIVOT PIVOT和UNPIVOT是从Microsoft SQL Server 2005开始新增的关系运算符,提供了一种把列数据转换为行数据的方式。PIVOT运算符把表达式中某一列中的数据转换为输出中的多个列,UNPIVOT运算符则相反。 * 第*页 使用PIVOT运算符 * 第*页 7.16 加密表中数据 * 第*页 7.17 本章小结 本章对操纵数据进行了详细讲述。首先,分析了操纵数据的必要性。其次,讲述了使用INSERT语句插入数据的方式。接下来,对更新数据进行了研究。然后,演示了删除数据的操作方式。最后,对检索操作进行了详细讨论。对于分组、连接、子查询、集合运算、公用表达式、PIVOT运算符、加密数据等内容都深入分析了其操作特点。 * 第*页 【思考和练习】 1. 为什么要操纵数据? 2. 如何向表中插入数据? 3. 如何将文件中的数据批量加载到表中? 4. 如何更新指定行、列的数据? 5. DELETE语句与DROP语句的操作结果一样吗? 6. 如何改变查询结果中的列标题? 7. 如何执行模糊匹配检索? 8. 排序操作的基本特点是什么? 9. 比较连接和子查询操作的异同点。 10. 如何执行分组操作? 11. 使用公用表达式的目的是什么? 1

文档评论(0)

hello118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档