Not Exisits 结构的 拓展灵活应用
来源:互联网 发布:linux内核调试ida 编辑:程序博客网 时间:2024/06/08 02:58
用下面的样例1引出我们讨论的这一类方法。
样例1:使用大学模式,用SQL写出以下查询,实现功能:找出选修了Biology系开设的所有课程的学生。
分析:首先,我们思考这样一个问题。假设我们将本题中各关系用以下方法定义>
A:找出学生所修的所有课程B:找出所有生物系所开设的课程
思路:
本样例想要的查找结果必然满足:
而相对应的,相差 可以由 minus 实现,为空 可以由 not exists 实现
由此,我们可以写出此查询如下:
select s.ID , s.namefrom student swhere not exists((select course_idfrom coursewhere dept_name='Biology')minus(select t.course_idfrom takes twhere s.ID=t.ID));
下面提供一个类似的样例2查询题。
样例2: 考虑如下的图书馆数据库。
member(memb no, name, age)
book(isbn, title, authors, publisher)
borrowed(memb no, isbn, date)
题目如下:
用SQL写出如下查询,实现功能:打印借阅了所有由McGraw-Hill出版的书的会员的名字。
select name from member m where not exists ( (select isbn from book where publisher = 'McGraw_Hill') minus (select isbn from borrowed b where b.memb_no = m.memb_no));
【注:基于 数据库系统概念 第六版 第三章内容 机械工程出版社】
<所有实现都是在Qracle 11g 上得到>
0 0
- Not Exisits 结构的 拓展灵活应用
- delete from... not exisits
- 数组的灵活应用
- 编写灵活的RMS应用
- 专业在生活中的灵活应用
- 二分查找的灵活应用
- HTML九九乘法表的灵活应用
- Block的应用---拓展NArray
- 康拓展开的应用
- 【JVM】OSGi 灵活的类加载结构
- Perl正则表达式的灵活应用
- android中Message机制的灵活应用
- Android中Message机制的灵活应用
- Android中Message机制的灵活应用
- Android中Message机制的灵活应用
- Android中Message机制的灵活应用
- Spring数据源的灵活配置巧应用
- Android中Message机制的灵活应用
- Codeforces Round #408 (Div. 2) A
- 遍历UIView的所有子视图
- 使用VS.NET手動創建一個MOSS的BDC實體
- MOSS工作流开发+ Email提醒
- 使用VS.net開發MOSS工作流(請假單)
- Not Exisits 结构的 拓展灵活应用
- Project Web Access 2007自定义FORM验证登录实现 zt
- 利用MOSS的SSO实现单点登陆[代码]-zt
- 自己动手写PHP框架(一)
- 向MOSS页面中添加服务器端代码的另外一种方式 zt
- 基于BASYS 2开发板的多功能数字钟Verilog程序
- 在MOSS中直接嵌入ASP.NET Page zt
- SharePoint Portal Server 2003 中的单一登录 zt
- Palindrome Partitioning I 和II的代码和理解(动态规划思想)