- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
 - 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
 - 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
 - 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
 - 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
 - 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
 - 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
 
                        查看更多
                        
                    
                4SQL高级应用
                    第四章	SQL高级应用 Transact-SQL程序设计基础 SELECT高级查询  重难点: 数据汇总 联接查询 子查询  1 Transact-SQL程序设计基础 批处理 变量 程序控制语句 用户自定义函数 2 SELECT高级查询 数据汇总 联接查询 子查询 在查询的基础上创建新表 2.1 数据汇总 COMPUTE和COMPUTE BY 	     COMPUTE BY 子句使您得以用同一 SELECT 语句既查看明细行,又查看汇总行。可以计算子组的汇总值,也可以计算整个结果集的汇总值。 COMPUTE 子句需要下列信息:  可选的 BY 关键字,该关键字可按对一列计算指定的行聚合。 行聚合函数名称;例如,SUM、AVG、MIN、MAX 或 COUNT。 要对其执行行聚合函数的列。 2.1 数据汇总 当 COMPUTE 带有可选的 BY 子句时,符合 SELECT 条件的每个组都有两个结果集:  每个组的第一个结果集是明细行集,其中包含该组的选择列表信息。 每个组的第二个结果集有一行,其中包含该组的 COMPUTE 子句中所指定的聚合函数的小计。  当 COMPUTE 不带可选的 BY 子句时,SELECT 语句有两个结果集:  每个组的第一个结果集是包含选择列表信息的所有明细行。 第二个结果集有一行,其中包含 COMPUTE 子句中所指定的聚合函数的合计。 2.1 数据汇总 示例:生成score表中degree列的求和总计。 SELECT sno, cno, degreeFROM scoreWHERE sno IN (103, 105)ORDER BY snoCOMPUTE SUM(degree) 生成每个小组的小计。 SELECT sno, cno, degreeFROM scoreWHERE sno IN (103, 105)ORDER BY snoCOMPUTE SUM(degree) BY sno 2.1 数据汇总 比较COMPUTE和GROUP BY GROUP 生成单个结果集。每个组都有一个只包含分组依据列和显示该组子聚合的聚合函数的行。选择列表只能包含分组依据列和聚合函数。 COMPUTE BY生成多个结果集。一类结果集包含每个组的明细行,其中包含选择列表中的表达式。另一类结果集包含组的子聚合,或 SELECT 语句的总聚合。选择列表可包含除分组依据列或聚合函数之外的其它表达式。聚合函数在 COMPUTE 子句中指定,而不是在选择列表中。  2.2 联接查询 如果希望从多个表中获取查询结果,例如从Student表中获取学生的姓名,从Score表中获取学生的成绩,那么就需要在多个表中选择和操作数据,这正是SQL的特色之一。 可在FROM或WHERE子句中指定联接。在FROM子句中指定联接条件,有助于将这些联接条件与WHERE子句中可能指定的其他搜索条件分开,指定联接时建议使用这种方法。 FROM first_table join_type second_table[ON (join_condition)] 2.2 联接查询 1 内连接	  内连接(Inner Join)也叫自然连接,是指将另一个表内的行数据与本表内的数据相互连接,产生的结果行数取决于参加连接的行数,也就是说在将两个表中的指定列进行比较时,仅将两个表中满足连接条件的行组合起来作为结果集。在内连接中,只有在两个表中匹配的行才能在结果集中出现。 2.2 联接查询 1.在WHERE子句中指定连接 		在WHERE子句中可以使用比较运算符(=、、等)指定连接的条件。在两个表之间进行内连接的语法如下: SELECT  select_listFROM  table1, table2WHERE  table1.column1= table2.column2 2.使用JOIN和ON关键字指定连接条件 		在使用SELECT语句时,还可以使用JOIN和ON关键字建立连接条件。 SELECT select_listFROM table1 [INNER] JOIN table2ON table1.column1= table2. column2 2.2 联接查询 2 外连接	  仅当至少有一个同属于两表的行符合联接条件时,内联接才返回行。内联接消除了与另一个表中的任何行不匹配的行。而外联接会返回FROM子句中提到的至少一个表或视图的所有行,只要这些行符合任何WHERE或HAVING搜索条件。 左联接 右联接 完全连接 2.2 联接查询 左连接 		所谓左连接,就是连接时主表在左,查询结果将保留左边表中的所有行(包括不满足连接条件的行)。 两种语法 在WHERE子句中使用“*=”替代原来的“=” 。 使用符合ANSI语法的 LEFT J
                您可能关注的文档
最近下载
- 基于隐私保护的社会性别劳动分工信息共享底层协议与算法实现.pdf VIP
 - 根据多波束水深数据估算人工鱼礁空方量的方法.pdf VIP
 - 如何理解“作风建设永远在路上,永远没有休止符”?我们应如何加强作风建设? (3) .doc VIP
 - 2025年咨询工程师环保项目现金流量表的编制与环境效益量化专题试卷及解析.pdf VIP
 - 联通华盛终端连锁化运营项目-销售管理培训.pdf VIP
 - 临时用电验收要点:国标GB50194-2014.pdf VIP
 - 综合交通运输体系规划编制技术导则.pdf
 - 2025至2030中国铝合金压铸件行业投资策略及应用需求潜力研究报告.docx VIP
 - 医院重大事件请示报告制度.docx VIP
 - 金风25MW机组运行维护手册.pdf VIP
 
原创力文档
                        

文档评论(0)