集合、连接查询.doc

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

世界上最伟大的真理:最简单就是最好 用最少的东西,最少的时间完成最复杂的事情就是最好的 讲义如此直接、简单——那就是最好 不需要讲解太多的例子,一个知识就一个例子,只要咱们把已知,问题统统列出来,再加上一个新知识,问题就解决了。学习就是这么的轻松与快乐! 让我们一起进入快乐的世界吧! 集合、连接查询 作业评讲: 带in的嵌套查询 1、查询与“李勇”同性别的学生的姓名和性别 2、查询选修了课程名为“C语言”的学生学号和姓名 带比较运算符的嵌套查询: 1、找出每个学生超过他选修课程平均成绩(avg(grade))的课程号(* where sno=sc.sno) select sno,cno from sc x where grade( select avg(grade) from sc where sno=x.sno) 2、找出比“李勇”年龄大的学生姓名,年龄,所在系部 带ANY或ALL的嵌套查询 1、查询其他系中比计算机系某一学生年龄小的学生姓名、年龄和所属院系(where any) select sname,sage,sdept from student where sageany ( select sage from student where sdept=cs) and sdeptcs 2、查询其他系中比计算机系所有学生年龄小的学生姓名、年龄和所属院系 3、查询不高于课程号为的最低成绩的学生的学号。 带EXISTS的嵌套查询 1、查询所有选修了号课程的学生姓名 2、查询所有没有选修号课程的学生姓名。(*) select sno,sname from student where not exists (select * from sc where cno!=2 and sno=student.sno) 3、查询选修所有全部课程的学生姓名。(*) …from…where… 嵌套查询: select…from…where in\比较运算符\any 或all\exists(select…from…where.).. students1(学生选课)数据库中有三个表 student(sno,sname,ssex,sage,sdept) course(cno,cname,ccredit) sc(sno,cno,grade) 集合查询:(参考:关系代数.ppt) 并操作UNION 查询选修了课程1或者选修了课程2的学生学号 SELECT Sno FROM SC WHERE Cno = 1 UNION ALL SELECT Sno FROM SC WHERE Cno = 2 交操作INTERSECT 查询既选修了课程1又选修了课程2的学生学号 SELECT Sno FROM SC WHERE Cno = 1 intersect SELECT Sno FROM SC WHERE Cno = 2 差操作EXCEPT。 查询选修了课程1,但不选修了课程2的学生学号 SELECT Sno FROM SC WHERE Cno = 1 except SELECT Sno FROM SC WHERE Cno = 2 场景:查询所有选修了1号课程的学生姓名 第一步:找出所有选修了1号课程的学生学号 select sno from sc where cno=1 结果:{95001,95002,95007,1111} 第二步:查询学号为{95001,95002,95007,1111} 的学生姓名 select sno,sname from student where sno 为{95001,95002,95007,1111} 合并: select sno,sname from student where sno in (select sno from sc where cno=1) 另外一种解法:查询所有选修了1号课程的学生姓名 student表 1 sc表 sno sname ssex sage sdept sno cno grade 95001 李勇 男 20 CS 1111 1 11 95002 刘晨 女 19 IS 95001 1 90 95003 王敏 女 18 MA 95001 2 80 95004 张立 男 19 IS 95001 3 88 95005 李四 男 22 IS 95001 4 70 95006 ass q 7 xq 95001 5 60 95007 张立立 女 19 cs 95001 6 89 95008 刘伟伟 女 18 CS 95001 7 77 95009 王新新 女

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档