数据库原理与应用:第9章 查询补充.ppt

数据库原理与应用:第9章 查询补充.ppt

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

selectsno,cno,degreefromscoreORDERBYsnocomputeSUM(degree)BYsno4、INTO子句通过INTO子句可以创建一个新表并将查询结果中的记录添加到该表中。SELECT…INTO不能与COMPUTE子句一起使用。例:查询所有学生的姓名及其所选课程课程名、成绩,并把查询结果插入到新表score1中。SELECTsname,cname,degreeINTOscore1FROMstudent,score,courseWHEREstudent.sno=score.snoANDscore.cno=course.cnoSELECT*FROMscore1例:创建一个与student表结构完全相同的空表student1。SELECT*INTOstudent1FROMstudentWHERE1=2表达式恒为假时,形成一个和原表结构一样的空表5、集合查询集合操作种类并操作交操作差操作SQLServer2005中支持上述三种集合查询并操作(UNION)交操作(INTERSECT)差操作(EXCEPT)SQLServer2000只支持并操作(UNION)不支持交操作(INTERSECT)和差操作(EXCEPT)。交操作和差操作必须转化。Oracle数据库中并操作(UNION)交操作(INTERSECT)差操作(MINUS)(1).并操作形式 查询块 UNION 查询块参加UNION操作的各结果表的列数必须相同;对应项的数据类型也必须相同最后结果集中的列名来自第一个SELECT语句在合并结果集时,默认将从最后的结果集中删除重复的行,除非使用ALL关键字。并操作(续)[例]查询95031班的学生和在1975-1-1后出生的学生。方法一:SELECT*FROMstudentWHEREclass=95031UNION[ALL]SELECT*FROMstudentWHEREsbirthday1975-1-1数据库原理与应用第9章查询补充1、FROM子句例:查询student表中1975年1月1日后出生的学生的sname和class。分别用列名姓名和班号表示。SELECTsname姓名,class班号FROMstudentWHEREsbirthday1975-1-1SELECT姓名,班号FROM(SELECT*FROMstudentWHEREsbirthday1975-1-1)ASX(学号,姓名,性别,出生日期,班号)2、GROUPBY子句GROUPBY分组属性1[,分组属性2]…[WITHROLLUP|CUBE]例:查询各班男生人数、女生人数。SELECTclass,ssex,COUNT(*)as人数FROMstudentGROUPBYclass,ssexORDERBYclass,ssex例:查询各班男生人数、女生人数、各班总人数及学生总人数。SELECTclass,ssex,COUNT(*)as人数FROMstudentGROUPBYclass,ssexWITHROLLUP使用了ROLLUP后,将对GROUPBY子句中所指定的各列产生汇总行,规则是:按列的排列的逆序依次进行汇总。如本例根据班号和性别对student表分组,使用ROLLUP后,先对性别字段(即性别不同,班号相同的行)进行汇总,然后对班号和性别均不同进行汇总,所产生的汇总行中对应具有不同列值的字段值将被置为NULL。SELECTclass,ssex,COUNT(*)as人数FROMstudentGROUPBYclass,ssexWITHCUBE使用CUBE对GROUPBY子句中各列的所有可能组合均产生汇总行。3、COMPUTE子句COMPUTE子句与集函数功以类似,对查询结果集中的所有记录进行汇总统计。与集函数的区别是COMPUTE子句不仅要显示汇总数据,还要显示参加汇总的记录的详细信息,而集合函数仅显示汇总数据。COMPUTEBY子句与GROUPBY子句的功能类似,对查询结果集进行分组统计,与GROUPBY子句的区别是COMPUTEBY子句不仅要显示汇总数据,还要分组显示参加汇总的记录的详细信息,而GROUPBY仅显示汇总数据。COMPUTE集函数[BY列名]COM

文档评论(0)

胖鸥 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档