第4章数据库的基本应用(4.2-4.3)答辩.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
提示:因为每位学生的考试成绩有多个,需要去掉学号的重复值。 * SELECT sno, sname, sdept FROM student WHERE sdept=(SELECT sdept FROM student WHERE sname=刘晨) * 【例4-57】 查询其他系中比计算机系某一学生年龄小的学生姓名和年龄。 【例4-58】 查询其他系中比计算机系学生年龄都小的学生。 * 第一个NOT EXISTS表示不存在这样的课程记录,第二个NOT EXISTS表示该生没有选修的选课记录。 SELECT sname FROM student WHERE sno= (SELECT sno FROM sc GROUP BY sno HAVING COUNT (*)= (SELECT COUNT (cno) FROM Course)) * * SELECT cno,sno,degree FROM sc order by cno compute sum(degree) by cno COMPUTE 和 GROUP BY 之间的区别汇总如下: GROUP BY 生成单个结果集。每个组都有一个只包含分组依据列和显示该组子聚合的聚合函数的行。选择列表只能包含分组依据列和聚合函数。 COMPUTE 生成多个结果集。一类结果集包含每个组的明细行,其中包含选择列表中的表达式。另一类结果集包含组的子聚合,或 SELECT 语句的总聚合 * SELECT的查询结果是元组的集合,所以可以对SELECT的结果进行集合操作。 * (1) 浏览全院学生信息。 SELECT * FROM student (2) 浏览某系部学生信息(如计算机工程系)。 SELECT * FROM class a,department b,student c WHERE a.deptno=b.deptno AND a.clssno=c.classno AND deptname=计算机工程系 (3) 浏览某系部某年级某班级学生信息(如计算机工程系05大专2班)。 SELECT * FROM class a,department b,student c WHERE a.deptno=b.deptno AND a.clssno=c.classno AND deptname=计算机工程系 AND classname=05大专2班 * (1) 查询电子工程系姓张的学生信息。 SELECT * FROM class a,department b,student c WHERE a.deptno=b.deptno AND a.clssno=c.classno AND deptname=电子工程系 AND sname LIKE 张% (2) 查询电子工程系2006级姓王的学生信息。 SELECT * FROM class a,department b,student c WHERE a.deptno=b.deptno AND a.clssno=c.classno AND deptname=电子工程系 AND LEFT(sno,4)= 2006’ AND sname LIKE 王% (3) 查询学号是01号的学生信息。 SELECT * FROM student WHERE sno LIKE %01 * (1) 统计学院总人数。 SELECT COUNT(*) FROM student WHERE tuixue=false AND xuxue=false (2) 统计学院各系部学生人数。 SELECT deptname,COUNT(*) AS 人数FROM student a,department b,class c WHERE a.classno=c.classno AND b.deptno=c.deptno AND tuixue=false AND xuxue=false GROUP BY b.deptno,deptname ORDER By deptname * 4.2.5 多表连接查询 4. 外连接 【例4-52】 利用左外连接查询改写例4-46(查询每个学生及其选修课的情况) 。 SELECT student.sno,sname,ssex,sbirth,sdept, cno,degree FROM student LEFT JOIN sc ON student.sno=sc.sno 4.2.6 嵌套查询 在SQL语言中,一个SELECT—FROM—WHERE语句称为一个查询块。将一个查询块嵌套在另一个查询块的WHERE子句或HAVING子句的条件中称为嵌套查询或子查询。 例如: SELE

文档评论(0)

希望之星 + 关注
实名认证
文档贡献者

我是一名原创力文库的爱好者!从事自由职业!

1亿VIP精品文档

相关文档