- 1、本文档共48页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
查询语句 -多表连接 查询计算机系的学生信息,输出学号、姓名及系名 dno student dep null 计算机系 SELECT sno , sname , dname FROM student , dep WHERE dname= 计算机系 AND student.dno=dep.dno ; 查询语句 -多表连接 查询物理课不及格的学生,输出学号、姓名及成绩 sno cno grade s06003 c01 50 s06004 c02 70 sno sname sex ... s06003 陆前锋 男 cno cname credit c02 化学 2 c01 物理 3 c05 力学 2 c e s SELECT s.sno , s.sname, e.grade FROM student s, enroll e , course c WHERE c.cname=物理 AND e.grade60 AND s.sno=e.sno AND e.cno =c.cno ; 查询语句 -多表连接 要根据选择条件及查询结果确定所渉及的表 如果表指定不全,查询将无法实现; 指定了不必要的表(表指定多了),会降低查询效率,且造成语句逻辑不清晰。 连接条件通常是“外来码-主码”的等值连接 连接条件可以写在FROM子句中,也可以写在WHERE子句中。 在SQL语言中,连接有几种类型,最常用的是“内连接(INNER JOIN)”,即只有连接上的记录才出现在结果集中。 查询语句 -多表连接 在多表查询中,连接过程是先将两个表连接,连接的结果与第3个表连接,而此连接结果再与第4个表连接,…. 在一个查询语句中,连接条件数是表的数目减1。 在多表查询中,当列名不唯一时,必须在列名前加上表名(即表名.列名) 即使列名唯一,在列名前加上表名也有助于提高查询效率。 如果表名较长,可以为表名指定一个简短的别名。 查询语句中的统计功能 … … … … … COUNT … … … … … … … … … … SUM、AVG、MAX、MIN 求和 平均 最大 最小 SELECT COUNT(*) as 课程总数 FROM course; SELECT MAX(credit) as 最高学分 FROM course; 查询语句中的统计功能 例:查询小于3学分的课程总数 … … … … … 2 1 2 2 2 count 查询课程的最高学分、最低学分和平均学分: SELECT COUNT(*) FROM course WHERE credit 3 ; SELECT MAX(credit) as 最高学分 , MIN(credit) as 最低学分 , round(AVG(credit),1) as 平均学分 FROM course ; 查询语句中的统计功能 例:统计学号为s06001的学生目前已通过的课程数及获得的学分 SELECT SUM(credit) AS 已获学分 , COUNT(*) AS 通过课程数 FROM enroll , course WHERE sno=s06001 and grade =60 and enroll.cno=course.cno 查询语句中的分组统计功能 在进行统计时,有时需要先将数据分组,然后以组为单位进行统计 使用GROUP BY子句实现分组统计 在分组子句中指定用于分组的列,该列值相同的记录被分为一组 SELECT语句中一旦含有分组子句,语句中所有的统计函数都是针对各组进行统计,而查询语句的结果是各个组的统计结果 只有出现在GROUP BY子句中的分组列才能与统计函数并列作为输出项 查询语句中的分组统计功能 统计各系的学生数,并输出系号及学生数 SELECT dno AS 系号 , COUNT(*) AS 学生数 FROM student GROUP BY dno ; SELECT dname AS 系名 , COUNT(*) AS 学生数 FROM student , dep WHERE student.dno=dep.dno GROUP BY dname ; 统计各系的学生数,并输出系名及学生数 … … … … … … d01 … d01 d01 d01 d01 d02 d02 dno count count 查询语句中的分组统计功能 查询每个学生已获得的学分,输出学号和学分 SELECT sno AS 学号 , SUM(credit) AS 已获学分 FROM enroll , course WHERE grade=60 AND enr
您可能关注的文档
- “三国法”期末复习攻略之肖强篇.docx
- 《高等数学A(二)》2chapter1(1)向量及其线性运算.ppt
- 《高等数学A(二)》2chapter1(2)内积外积混合积.ppt
- 《大学计算机基础精品教学》第一章 计算机及信息技术概述.ppt
- 《高等数学A(二)》2chapter1(3)平面与直线.ppt
- 《高等数学A(二)》2chapter1(5)二次曲面.ppt
- 《高等数学A(二)》2chapter2(1)多元函数的概念、极限与连续.ppt
- 《大学计算机基础精品教学》第七章 多媒体技术.ppt
- 《高等数学A(二)》2chapter1(4)曲面与曲线.ppt
- 《高等数学A(二)》2chapter2(4)复合函数微分法.ppt
文档评论(0)