数据库 SQL 语法详解.ppt

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

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 练习: 5、检索选修了课程号为C01或C02课程,且成绩高于或等于70分的学生的姓名,课程名和成绩。 6、检索所有学生的姓名、所选课程的课程名和成绩以及课程号,并且按成绩的降序和课程号的升序进行排列(使用外连接将没有选课的同学列出来)。 7. 列出没有选课的学生姓名 8. 列出平均分最高的学生所在系的所有学生的姓名 * 练习: 9.查询CS系C01课程的成绩比C01课程的平均分高的学生学号 10.查询既选修了C01又选修了C02的学生 11.统计及格的课程数在四门以上的学生所选课程的平均成绩。最后按降序列出平均成绩名次名单来。 12.检索所有CS系学生都选修了的课程(列出课程号) * 练习: 13.查询年龄高于其所在系的平均年龄的学生姓名 14.查询每位同学的选课中成绩最高的课程对应的学号,姓名,课程名,成绩 15.为MA系学生选修必修课C05 16.将CS系,C01课程学生的成绩加10分 17.将每位同学的最低分加10分(选) 18.将”数据库”的选课记录全部删除 * 练习: 现有下面三个关系: 商店 S(Sno,Sname,City) 商品 P(Pno,Pname,Color) 销售 SP(Sno,Pno,Number) 查询没有选择红色零件的商店名 查询只选择了红色零件的商店名 查询选择了所有红色零件的商店名 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Having 针对聚合函数的结果值进行筛选(选择),它作用于分组计算结果集 跟在Group By子句的后面。 例:列出具有两门(含)以上不及格的学生的学号、不及格的课目数。 Select sno,count(sno) From SC Where grade 60 Group By sno Having count(sno) = 2 聚合函数 * Having 与 Where的区别 Where 决定哪些元组被选择参加运算,作用于关系中的元组 Having 决定哪些分组符合要求,作用于分组 聚合函数的条件关系必须用Having,Where中不应出现聚合函数 聚合函数 * 聚合函数对Null的处理 Count:不计 Sum:不将其计入 Avg:具有 Null 的元组不参与 Max / Min:不参与 例:Select count(sdept) From Student Select Avg(sage) From Student 聚合函数—— Null * 例: 列出每位同学的平均成绩和选课门数。 Select sno ,avg(grade) Savg,count(*) Scnt From SC Group By sno 列出CS系每位同学的平均成绩和选课门数。 Select sc.sno ,avg(grade) Savg,count(*) Scnt From SC ,student where sc.sno=student.sno and sdept=‘CS’ Group By sc.sno * 例: 列出CS系女同学考试合格的课程数。 Select sc.sno , count(*) Scnt From SC ,student where student.sno=sc.sno and sdept=‘cs’ and ssex=‘f’ and grade=60 Group By sc.sno 列出CS系获得8分以上学分的女同学,列出学号和所得总学分。 Select sc.sno , sum(credit) Scredit From SC ,student,course where sc.sno=student.sno and sc.cno=course.cno and ssex=‘f’ and sdept=‘CS’ and grade=60 Group By sc.sno having sum(credit)=8 * 例: 找出具有最高平均成绩的学号及平均成绩 Select sno ,avg(grade) From SC Group By sno Having avg(grade) = all (Select avg(grade) From SC Gr

文档评论(0)

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

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

1亿VIP精品文档

相关文档