2.假设关系R(A, B)和S(B, C, D)情况如下: R有20000个元组,S有1 200个元组,一个块能装40
个R的元组,能装30个S的元组,估算下列操作需要多少次磁盘块读写。
(1) R上没有索引,sclect* from R;
解:需要20000÷40 = 500次
讯享网
(2) R中A为主码,A有3层B+树索引,select * from R whereA- 10; Hoto
讯享网解:块数:4(3个B+树,一个数据)
(3)嵌套循环连接RDAS;
解:S中本身有1200÷30 = 40块,需要的次数为:40 + 500 * (40 ÷ 内存分配的块数)
(4)排序合并连接RDAS,区分R与S在B属性上已经有序和无序两种情况。
讯享网解:有序的时候:(20000 ÷ 40) + (1200 ÷30) = 500 + 40 = 540 = T(有序) 无序的时候:T(排序) + T(有序)
3.对学生课程数据库,查询信息系学生选修了的所有课程名称。中为代期I- 31053
select Cname from Student, Course, sc where Student Sno-SC.Sno and SC.Cno=Course.Cno and Student.Sdept = 'IS':
- 试画出用关系代数表示的语法树,并用关系代数表达式优化算法对原始的语法树进行优化处理,画出优化后的标准语法树。




讯享网解: (1):对teacher表进行扫描,查看元组性别为女的数据 (2):可以先通过索引找到Dno = 301的,然后顺着B+树的顺序集合来得到想要的数据即可。 (3):和(1)几乎一样,对表进行扫面,找到满足条件的 (4):先对year进行处理,找到之后判断salary是否满足条件 (5):对work表进行扫描,看数据是否满足条件。
5.对于题4中的数据库模式,有如下的查询:
seleet Tname from teacher, department, work where teacher.tno = work tno and department.dno = work.dno and department. dname = '计算机系' and salary> 5000
- 画出语法树以及用关系代数表示的语法树,并对关系代数语法树进行优化,画出优化后的语法树。






版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/69362.html