数据库技术 试题库(附答案) 联系客服

发布时间 : 星期一 文章数据库技术 试题库(附答案)更新完毕开始阅读26e2fa24aaea998fcc220e41

?? ??

3.设有如图所示的关系R和S,计算: (1)R1=R-S

R S (2)R2=R∪S

(3)R3=R∩S A B C A B C (4)R4=R×S

b a f a b c

d a d b a f

c b d

解:本题各小题的结果如图所示。

R-S R∪S

A B C A B C

a b c a b c

b a f c b d c b d

d a f

R∩S R×S

A B C A B C A B C

b a f a b c b a f

a b c d a f

b a f b a f

b a f d a f c b d b a f c b d d a f 4.设有如图所示的关系R,S和T,计算: (1)R1=R∪S

R S T (2)R2=R-S

(3)R3=R ?? T

A B A B B C (4)R4=R ?? T

a d d a b b A<C

b e b a c c (5)R5=∏A(R)

c c b c b d (6)R6=σA=C(R×T)

解:本题各小题的结果如下图所示。 R1 R2 R3 R4 R5 R6 A B A B C A B B C A A B B C A B a d a d C c c a d b c a a d b c b e b e a d c c b a d c c c c c c a d b d c a d b d d a b a d e b e c c b e b d c c b d b e c c b e b d c c b d 5.设有如图所示的关系R,S,计算: (1)R1=R ?? S

A B C C D E (2)R2=R ?? S

3 6 7 3 4 5 [2]<[2]

7 2 3 4 5 7 (3)R3=σB=d(R×S)

7 2 3

4 4 3 解:本题各小题的结果如下图所示。 R1 A B C C D E R2

A B C D E 7 2 3 3 4 5 3 6 7 2 3 4 5 7 2 3 A B C C D E 7 2 3 4 5 R3 7 2 3 3 4 5 4 4 3 4 5 4 4 3 3 4 5

6.设有如图所示的两上关系E1和E2,其中E2是从E1中经过关系运算所形成的结果,试给出该运算表达式。

E1 E2

A B C B C 1 2 3 5 6

4 5 6 8 9

7 8 9

生成E2所经过的关系运算是:∏2,3(σB>2(E1))或∏2,3(σC>3(E1))解:从E1。

7.设有如下所示的三个关系S、C和SC。用关系代数表达式表示下列要求,并求出结果。

S 学号 姓名 年龄 性别 籍贯 20001 20002 20003 20004 20005

课程号 C001 C002 C003 C004

学号 20001 SC 课程号 C001 成绩 90 课程名 高等数学 数据结构 操作系统 编译原理 C 教师 李 娟 刘小东 吴 浩 王 伟 办公室 416 415 415 415 王小严 20 李 白 21 陈志坚 23 王 兵 20 张 红 22 女 男 男 男 女 北京 上海 长沙 上海 武汉 R S

20001 20001 20001 20002 20003 20003 20003 20004 20004 20005 20005 C002 C003 C004 C001 C001 C002 C004 C001 C004 C001 C003 90 85 87 90 75 70 56 90 85 95 80

(1).检索籍贯为上海的学生姓名、学号和选修的课程号。 (2).检索选修操作系统的学生姓名、课程号和成绩。 (3).检索选修了全部课程的学生姓名、年龄。 解:

(1).R1=∏2,1,6(σ籍贯=’上海’(s?? sc))

或:R1=∏姓名,S.学号,课程号(σ籍贯=’上海’(s?? sc)) 或:R1=∏姓名,S.学号,课程号(σ籍贯=’上海’(s)?? sc) (2). R2= ∏2,6,7(s?? sc?? σ课程名=’操作系统’(C)) 或:R2=∏姓名,SC.课程号,成绩(s?? sc??σ课程名=’操作系统’(C)) (3). R3=∏2,3(s?? ∏1,2(sc)÷∏1(C))) 或:R3=∏姓名,年龄(s?? (∏学号,课程号(sc)÷∏课程号(C))) 检索结果如下:

R1 姓名 学号 课程号 李 白 王 兵 王 兵 20002 20004 20004 R2 课程号 C003 C003 R3 年龄 20 C001 C001 C004 姓名 王小严 张 红 成绩 85 80 姓名 王小严 8.设有如下所示的关系S(S#,SNAME,AGE,SEX)、C(C#,CNAME,TEACHER)和SC(S#,C#,GRADE),试用关系代数表达式表示下列查询语句:

(1)检索“程军”老师所授课程的课程号(C#)和课程名(CNAME)。 (2)检索年龄大于21的男学生学号(S#)和姓名(SNAME)。

(3)检索至少选修“程军”老师所授全部课程的学生姓名(SNAME)。 (4)检索”李强”同学不学课程的课程号(C#)。 (5)检索至少选修两门课程的学生学号(S#)。

(6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。

(7)检索选修课程包含“程军”老师所授课程之一的学生学号(S#)。 (8)检索选修课程号为k1和k5的学生学号(S#)。 (9)检索选修全部课程的学生姓名(SNAME)。

(10)检索选修课程包含学号为2的学生所修课程的学生学号(S#)。 (11)检索选修课程名为“C语言”的学生学号(S#)和姓名(SNAME)。 解:本题各个查询语句对应的关系代数表达式表示如下:

(1). ∏C#,CNAME(σTEACHER=‘程军’(C)) (2). ∏S#,SNAME(σAGE>21∧SEX=”男”(C)) (3). ∏SNAME{s?? [∏S#,C#(sc)÷∏C#(σTEACHER=‘程军’(C))]} (4). ∏C#(C)- ∏C#(σSNAME=‘李强’(S) ?? SC) (5). ∏S#(σ[1]=[4]∧[2]≠[5] (SC × SC))

(6). ∏C#,CNAME(C?? (∏S#,C#(sc)÷∏S#(S))) (7). ∏S#(SC?? ∏C#(σTEACHER=‘程军’(C)))

(8). ∏S#,C#(sc)÷∏C#(σC#=’k1’∨ C#=’k5’(C)) (9). ∏SNAME{s?? [∏S#,C#(sc)÷∏C#(C)]} (10). ∏S#,C#(sc)÷∏C#(σS#=’2’(SC))

(11). ∏S#,SNAME{s?? [∏S#(SC?? σCNAME=‘C语言’(C))]}

9.以图3.18的数据库为例,用关系代数完成以下检索。

关系模式:仓库(仓库号,城市,面积) 职工(仓库号,职工号,工资)

订购单(职工号,供应商号,订购单号,订购日期) 供应商(供应商号,供应商名称,地址) (1).检索在仓库2工作的职工的工资。 解:

关系代数表示:

∏职工号,工资(σ仓库号=“WH2“(职工))

(2).检索在上海工作的职工的工资。 解:

关系代数表示:

∏职工号,工资(σ城市=“上海”(仓库)? 职工)

(3).检索北京的供应商名称。 解:

关系代数表示:

∏供应商名称(σ地址=“北京“(供应商))

(4).检索目前与职工E6有业务联系的供应商名称。 解:

关系代数表示:

∏供应商名称(σ职工号=“E6“(订购单)??( 供应商)

(5).检索所有职工的工资大于1220的仓库所在的城市。 解:

关系代数表示: ∏城市(仓库??( ( ∏仓库号(职工)-∏仓库号(σ工资≤“1220“(职工))))

(6).检索和北京的所有供应商都有业务联系的职工的工资。 解:

关系代数表示: