关系代数习题
关系代数习题
关系代数习题 3.26(总6页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--1. 下面的选项不是关系数据库基本特征的是()。
A.不同的列应有不同的数据类型B.不同的列应有不同的列名C.与行的次序无关D.与列的次序无关2. 一个关系只有一个()。
A.候选码B. 外码C. 超码D. 主码3. 关系模型中,一个码是()。
A.可以由多个任意属性组成B.至多由一个属性组成C.可有多个或者一个其值能够唯一表示该关系模式中任何元组的属性组成D.以上都不是4. 现有如下关系:患者(患者编号,患者姓名,性别,出生日起,所在单位)医疗(患者编号,患者姓名,医生编号,医生姓名,诊断日期,诊断结果)其中,医疗关系中的外码是()。
A. 患者编号B. 患者姓名C. 患者编号和患者姓名D. 医生编号和患者编号5. 现有一个关系:借阅(书号,书名,库存数,读者号,借期,还期),假如同一本书允许一个读者多次借阅,但不能同时对一种书借多本,则该关系模式的外码是()。
A. 书号B. 读者号C. 书号+读者号D. 书号+读者号+借期6. 关系模型中实现实体间 N:M 联系是通过增加一个()。
A.关系实现B. 属性实现C. 关系或一个属性实现D. 关系和一个属性实现7. 关系代数运算是以()为基础的运算。
A. 关系运算B. 谓词演算C. 集合运算D. 代数运算8. 关系数据库管理系统应能实现的专门关系运算包括()。
A. 排序、索引、统计B. 选择、投影、连接C. 关联、更新、排序D. 显示、打印、制表9. 五种基本关系代数运算是()。
A.∪-× σ πB.∪-σ πC.∪∩× σ πD.∪∩σ π11. 关系数据库中的投影操作是指从关系中()。
A.抽出特定记录B. 抽出特定字段C.建立相应的影像D. 建立相应的图形12. 从一个数据库文件中取出满足某个条件的所有记录形成一个新的数据库文件的操作是()操作。
关系代数运算习题
关系代数运算习题一、选择题1关系代数运算可以分为两类:传统的集合运算和专门的关系运算?下面列出的操作符中,属于传统的集合运算是( A )I .n(交)n .u(并)『x(广义笛卡儿积)w?一(差)v.n(投影)w选择)A)I、n、川和w B)川、w、V和wC)I、川、V和w D)都是2、关系数据库管理系统能实现的专门关系操作包括(B)A、显来,打印和制表B、选择,投影和连接C、关联、更新和排序D、排序、索引和统计3、在关系数据基本操作中,从表中选项出满足某种条件的记录的操作称为( A )A、选择B、投影C、连接D、扫描4、元组的集合在关系数据库中称为关系,一般来说,表示元组的属性或者最小属性组称为DA、字段B、索引C、标记D、主键5、在下面3个关系中学生S (SNO , SNAME , SEX, AGE )课程 C (CNO , CNAME , CREDIT )学生选课SC (SNO, CNO , GRADE )要查找选修“数据库”课程的女学生的姓名,将涉及到关系(D)A、SB、C, SCC、S, SC DS, C, SC6、对于关系数据库来讲,下面(C)说法是错误的。
A、每一列的分量是同一种类型数据,来自同一个域B、不同列的数据可以出自同一个域C、行的顺序可以任意交换,但列的顺序不能任意交换关系中的任意两个元组不能完全相同7、关系数据库中有3种基本操作,从表中取出满足条件的属性的操作是(A)A、选择B、投影C、连接D、扫描8、关系数据库在有3种基本操作,将具有共同属性的两个关系中的元组连接到一起,构成新表的操作称为(C )A、选择B、投影C、连接D、扫描9 若D1={a1,a2,a3} , D2={b1,b2,b3},贝U D1*D2 集合中共有元组(C)个A、 6B、8C、9D、12 10下列(C)运算不是专门的关系运算A、选择B、投影C、笛卡尔积D、连接11、如下两个关系R1和R2,它们进行运算后得到R3。
关系代数习题讲解
• (7) πsno,grade (σcno=‘1’^G<60 (SC))
• (8) πname,cname,grade (Student
Course SC)
试用关系代数写出下列查询:
检索读者号为“R016”的读者姓名和工作单位; 检索读者“李林”所借图书的书名。
检索借阅图书号为“B5”的读者姓名;
STEP 01
πRN,RW (σR#=‘R016’ (R))
STEP 02
πRN (σB#=‘B5’ (BO R))
STEP 03
πBN (σRN=‘李林’ (R BO B))
• (3) πsno,grade (σcno=‘3’^G>90 (SC))
• (4) πsno,grade (σcname=‘数学’ (Course SC))
• (5) πsno,sname,ssex,sage,sdept (Student)
• (6) πsno,sname (σSdept=‘计算机系’ (Student))
3.设有三个关系: S(S#,SNAME,AGE,SEX) SC(S#,C#,CNAME) C(C#,CNAME,TEACHER)
试用关系代数表达式表示下列查询语句: ① 检索LIU老师所授课程的课程号和课程名。 ② 检索年龄大于23岁的男学生的学号和姓名。 ③ 检索学号为S3学生所学课程的课程名与任课教师名。 ④ 检索至少选修LIU老师所授课程中一门课的女学生姓名。 ⑤ 检索WANG同学不学的课程的课程号。 ⑥ 检索至少选修两门课的学生学号。 ⑦ 检索全部学生都选修的课程的课程号与课程名。 ⑧ 检索选修课程包含LIU老师所授全部课程的学生学号。
查询学生的详细情况:学号、姓名、性别、年龄、所
关系代数习题
关系代数习题1.设有如图所示的关系R、W和D,计算下列关系代数:(1)R1=(2)R2=(3)R3=(4)R4=(5)R5=2.设关系R、S和S’如图2.1所示,计算:(1)R1=R∪S’;(2)R2=R-S’;(3)R3=R×S;(4)R4=R∞A=CS=σA=C(R×S);(5)R5=R∞S=∏A,B,CσR.B=S.B(R×S)。
3.设有如下关系:学生(学号,姓名,性别,专业,出生日期)教师(教师编号,姓名,所在部门,职称)授课(教师编号,学号,课程编号,课程名称,教材,学分,成绩)1)查找学习“数据库原理”课程且成绩不及格的学生学号和任课教师编号;2)查找学习“英语”课程的“计算机应用”专业学生的学号、姓名和成绩。
(中)4.设有如下关系:S(S#,SNAME,AGE,SEX)/*学生(学号,姓名,年龄,性别)*/ C(C#,CNAME,TEACHER)/*课程(课程号,课程名,任课教师)*/SC(S#,C#,GRADE)/*成绩(学号,课程号,成绩)*/查询:(1)教师“程军”所授课程的课程号和课程名;(2)“李强”同学不学课程的课程号;(3)至少选修了课程号为k1和k5的学生学号;(4)选修课程包含学号为2的学生所修课程的学生学号。
(中-难)5.设有如下关系:图书关系B(图书编号B#,图书名T,作者A,出版社P);读者关系R(借书证号C#,读者名N,读者地址D);借阅关系L(C#,B#,借书日期E,还书标志BZ);BZ=‘1’表示已还;BZ=‘0’表示未还;查询:(1)“工业出版社”出版的图书名;(2)查询99年12月31日以前借书未还的读者名与书名。
答案:1.ABabcbdec bd A B a b de R R A R .B S .B C a b b c a b e a a b b db bc c b e a c b bd de b c d e e a d e b d R A R .B S .Ba b e a c b b c d e b d R A B C a b c a b d c b c cC b d Rea2.3.(1)(2)4.(1)(2)(3)(4)5.(1)(2)。
关系代数习题
小测验1(一)单项选择题1.关系模型基本的数据结构是(D)A.树B.图 C.索引 D.关系2.关系数据库的查询语言是一种(C)A 过程性语言 B.第三代语言c.非过程性语言 D.高级程序设计语言3.关系模型中,实体完整性规则是(B)A.实体不允许是空实体 B.实体的主键值不允许是空值c.实体的外键值不允许是空值 D.实体的属性值不允许是空值4.关系数据库的数据操作分为两类(A)A.查询和更新 B.排序和索引c.插入和删除 D.修改和排序5.在关系模型中,下列说法正确的为( D )。
A.关系中存在可分解的属性值B. 关系中允许出现相同的元组C.关系中考虑元组的顺序D.元组中,属性理沦上是无序的,但使用时按习惯考虑列的顺序6. 在关系模型中,下列说法正确的为(B)A.关系中元组在组成主键的属性上可以有空值B.关系中元组在组成主键的属性上不能有空值C.主键值起不了唯一标识元组的作用D.关系中可引用不存在的实体7.下列为非过程语言的为( C )。
A.汇编语言 B.PASCAL语言‘C.关系查询语言D.C语言8.设关系R、s、w各有10个元组,则这三个关系的笛卡尔积的基数为(C)A.10 B.30 C.1000 D.不确定(与计算结果有关)9.关系代数中,一般联接操作由(A)组合而成。
A.笛卡尔积和选择 B.笛卡尔积、选择和投影C.笛卡尔积和投影 D.投影和选择10.设关系R和S的属性个数分别为r和s,那么(R x S)操作结果的属性个数为( A )A.r十s B.r-s C.r×s D.max(r,s)11.设关系R和s的结构相同,且各有100个元组,则这两个关系的并操作结果的元组个数为(D)A.100 B.小于等于100 C.200 D. 小于等于20012.关系代数的交操作可以由(B)操作组合而成。
A.并和差 B.差C.选择 D.联接13.如果两个关系没有公共属性,那么其自然联接操作(A)A.转化为笛卡尔积操作B.转化为联接操作c.转化为外部并操作D.结果为空关系14.设关系R和S的值如下:B)A.1 B.2 C.3 D.415.在14题中,操作结果的元组个数是()。
关系代数习题
习题四1.试述关系模型的三个组成部分。
2.试述关系数据语言的特点和分类。
3.定义并解释下列术语,说明它们之间的联系与区别。
1)主码、候选码、外码。
2)笛卡尔积、关系、元组、属性、域。
3)关系、关系模式、关系数据库。
4. 试述关系模型的完整性规则。
在参照完整性中,为什么外码属性的值也可以为空?什么情况下才可以为空?5. 试述等值连接与自然连接的区别和联系。
6. 对于学生选课关系,其关系模式为:学生(学号,姓名,年龄,所在系);课程(课程名,课程号,先行课);选课(学号,课程号成绩)。
用关系代数完成如下查询。
1)求学过数据库课程的学生的姓名和学号。
2)求学过数据库和数据结构的学生姓名和学号。
3)求没学过数据库课程的学生学号。
4)求学过数据库的先行课的学生学号。
7. 设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:S(SNO,SNAME,STATUS,CITY);P(PNO,PNAME,COLOR,WEIGHT);J(JNO,JNANE,CITY);SPJ(SNO,PNO,JNO,QTY)。
其中:供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成;零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成;工程项目表J 由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(CITY)组成;供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量组成(QTY)组成,表示某供应商供应某种零件给某工程项目的数量为QTY。
试用关系代数完成如下查询:1)求供应工程J1 零件的供应商号码SNO。
2)求供应工程J1 零件P1的供应商号码SNO。
3)求供应工程J1 零件为红色的供应商号码SNO。
4)求没有使用天津供应商生产的红色零件的工程号。
5)求至少用了供应商S1所供应的全部零件的工程号。
关系代数作业(参考答案)
sno cno 'C 2 'orcno 'C 4 ' SC
5.查询至少选修了课程号为 C2 和 C4 课程的学生学号;
sno cno 'C 2 ' SC sno cno 'C 4 ' SC
8.查询选修课程包含学生 S3 所修课程的学生学号和姓名;
sno , sname S sno ,cno SC cno sno ' S 3 ' SC
9.查询未选修数据库技术的学生的学号、姓名、性别和系别;
sno , sname , sex ,dept S sno , sname , sex ,dept S sno SC cname '数据库技术 ' C
应用实例: 设教学数据库中有三个关系: 学生关系 S(SNO,SNAME,AGE,SEX,DEPT) 选课关系 SC(SNO,CNO,GRADE) 课程关系 C(CNO,CNAME) 试用关系代数表达式描述下列查询: 1.查询选修了课程号为 C2 课程的学生学号与成绩;
sno , grade cno 'C 2 ' 课程的学生学号、姓名和年龄;
sno , sname ,age S sno , sname ,age S sno cno 'C 2 ' SC
7.查询选修了全部课程的学生姓名;
sname sno , sname S sno ,cno SC cno C
10. 查询管理学课程的成绩在 80 至 90 分之间的工商管理系的男生的学号和姓名。
(完整版)数据库第二章关系代数习题
1.设有如图所示的关系S、SC和C,试用关系代数表达式表示下列查询语句:S C SCS# SNAME AGE SEX1 李强23 男2 刘丽22 女5 张友22 男C# CNAME TEACHERk1 C语言王华k5 数据库原理程军k8 编译原理程军S# C# GRADE1 k1 832 k1 855 k1 922 k5 905 k5 845 k8 80(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)。
(12)检索没有一门课程成绩不及格的学生学号,姓名。
答:本题各个查询语句对应的关系代数表达式表示如下:(1) ΠC#,CNAME(σTEACHER ='程军'(C))(2) ΠS#,SNAME(σAGE>21^SEX ='男'(S))(3) ΠSNAME(S(ΠS#,C#(SC)÷ΠC#(σTEACHER ='程军'(C))))(4) ΠC#(C)-ΠC#(σSNAME ='李强'(S)∞SC)(5) ΠS# (σ1=4^2≠5 (S C×SC))(6) ΠC#,CNAME(C∞(ΠS#,C#(SC)÷ΠS#(S)))(7) ΠS# (SC∞ΠC# (σTEACHER ='程军'(C)))(8) ΠS#,C#(SC)÷ΠC#(σC#=’K1’VC#=’K5’ (C))(9) ΠSNAME(S∞(ΠS#,C#(SC)÷ΠC#(C)))(10) ΠS#,C#(SC)÷ΠC#(σC#=’2’ (S C))(11) ΠS#,SNAME(S∞ΠS#(SC∞(σCNAME ='C语言'(C))))(12)П学号,姓名(学生)-П学号,姓名(σ分数<60(学生∞学习))。
数据库(关系代数)练习题
数据库(关系代数)练习题习题一实体联系图(e-r图)1、设立某汽车运输公司数据库中存有三个实体集,一就是“车队”实体集,属性存有车队号、车队名;二就是“车辆”实体集,属性存有车牌号、厂家、出厂日期;三就是“司机”实体集,属性存有司机编号、姓名、电话。
设车队与司机之间存在“聘用”联系,每个车队可以聘用若干司机,但每个司机只能应聘于一个车队,车队聘用司机有聘期;司机与车辆之间存在“使用”联系,司机使用车辆有使用日期和公里数,每个司机可以使用多辆汽车,每辆车可以被多个司机使用。
要求:画出e-r图,并在图上注明属性、联系的类型。
2、某学校管理系统中有三个部门:后勤部、教务处和财务处。
后勤部用来管理学生的住宿;教务处用来管理学生选课和教师任课;财务处用来管理发放教师的工资。
后勤部涉及到的实体及实体之间的联系如下:学生:属性存有学号、姓名、性别、年龄、专业和入学时间?宿舍:楼号、房间、档次一个学生只能住在一个宿舍,一个宿舍能住多个学生,学生住宿要交租金。
教务处涉及到的实体及实体之间的联系如下:学生:属性存有学号、姓名、性别、年龄、专业和入学时间教师:属性存有教师号、姓名、性别、职称、专业课程:属性存有课程号、课程名、学时数、专业一个学生可以选多门课,一门课可以由多个学生选修;一个教师可以教多门课,一门课也可以由多个老师教;学生选修某门课有一个成绩;教师教某门课有一个工作量。
财务处涉及到的实体及实体之间的联系如下:教师:属性有教师号、姓名、性别、职称、专业工资:属性存有基本工资、上班工资、物主、工资编号一个教师只能领一份工资,一份工资只能由一个教师领,领工资时应注明是某月工资。
试画出以上各实体的e-r图关系代数1、建有一个spj数据库,包含s、p、j、spj四个关系模式:s(sno,sname,status,city);p(pno,pname,color,weight);j(jno,jname,city);spj (sno,pno,jno,qty);供应商表s由供应商代码sno,供应商姓名sname,供应商状态status,供应商所在城市city组成;零件表中p由零件代码pno,零件名pname,颜色color,重量weight共同组成;工程项目表j由工程项目代码jno,工程项目名jname,工程项目所在城市city组成;供应情况表spj由供应商代码sno,零件代码pno,工程项目代码jno,供应数量qty组成,表示某供应商供应某种零件给某工程项目的数量为qty。
数据库关系代数习题
答:因为关系是一个集合,因此不考虑、为什么关系中不允许 有重复元组?
答:如果关系中有重复元组,那么就无 法用键来标识唯一的元组。因此在关系 模型中对关系作了限制。
整理课件
2
2。3、关系与普通的表格、文件
有什么区别?
的元组)
整理课件
15
(6)检索全部学生都选修的课程的课 程号与学生学号。
πC#,S#(SC|X|(πS#,C#(SC)÷πS#(S))) (涉及到全部值时,应用除法,“除数”是
全部量。)
整理课件
16
(7)检索选修课程包含LIU老师所 授课程的学生学号。
πS#(σTEACHER='LIU'(S|X|SC|X|C))
πSNAME(σSEX=‘女’∧TEACHER='LIU'(S|X|SC|X|C ))
整理课件
13
(4)检索WANG同学不学的课程号。
πC#(SC)-πC#(σSNAME='WANG'∧S.S#=SC.S#(S×SC))
整理课件
14
(5)检索至少选修两门课程的学生学 号。
πS#(σ1=4∧2≠5(SC×SC)) (SC自乘之后,同一个学号下两个课程号不同
整理课件
17
答:总而言之,关系是一种规范化了的二维表格, 在关系模型中,对关系作了下列规范性限制: 1)关系中每一个属性值都是不可分解的。 2)关系中不允许出现相同的元组(没有重复元组)。 3)由于关系是一个集合,因此不考虑元组间的顺 序,即没有行序。 4)元组中,属性在理论上也是无序的,但在使用 时按习惯考虑列的顺序。
整理课件
3
2。4、笛卡尔积、等值联接、自 然联接三者之间有什么区别?
关系代数习题参考
一、设教学库中有三个关系:学生关系S(S#,SNAME,AGE,SEX)学习关系SC(S#,C#,GRADE)课程关系C(C#,CNAME,TEACHER)下面用关系代数表达式表达各个查询语句1.检索学习课程号为C2的学生学号与成绩。
2。
检索学习课程号为C2的学生学号与姓名。
3.检索选修课程名为MATHS的学生学号与姓名。
4。
检索选修课程号为C2或C4的学生学号.5.检索至少选修课程号为C2和C4的学生学号.6。
检索不学C2课的学生姓名与年龄.7。
检索学习全部课程的学生姓名。
解:1。
πS#,GRADE(σC#=‘C2’(SC))或π1,3(σ2=‘C2’(SC))2. πS#,SNAME(σC#=‘C2’(S︱×︱SC))3. πS#,SNAME(σCNAME=‘MATHS’( S︱×︱SC ︱×︱ C))4。
πS#(σC#=‘C2’∨C#=‘C4’(SC))5. π1(σ1=4∧2=‘C2’∧5=‘C4’(SC×SC))6。
πSNAME,AGE(S)-πSNAME,AGE(σC#=‘C2’( S︱×︱SC))7.学生选课情况:πS#,C#(SC)全部课程:πC#(C)学了全部课程的学生的学号用除操作,结果是学号S#集:πS#,C#(SC)÷πC#(C)从S#求学生姓名,可用自然联接和投影组合操作:πSNAME(S︱×︱(πS#,C#(SC)÷πC#(C)))二、设有一个数据库:学生关系模式:S(学号S#,姓名SNAME,年龄AGE,性别SEX)学生课程模式:SC(学号S#,课程号C#,成绩GRADE)课程关系模式:C(课程号C#,课程名CNAME,教师TEACHER)试用关系代数表达式表示下列查询语句:1.检索年龄大于20岁的男学生的学号、姓名。
2.检索田老师所授课程的课程号、课程名3。
检索至少选修两门课程的学生学号。
关系代数习题
小测验1(一)单项选择题1.关系模型基本的数据结构是(D)A.树B.图 C.索引 D.关系2.关系数据库的查询语言是一种(C)A 过程性语言 B.第三代语言c.非过程性语言 D.高级程序设计语言3.关系模型中,实体完整性规则是(B)A.实体不允许是空实体 B.实体的主键值不允许是空值c.实体的外键值不允许是空值 D.实体的属性值不允许是空值4.关系数据库的数据操作分为两类(A)A.查询和更新 B.排序和索引c.插入和删除 D.修改和排序5.在关系模型中,下列说法正确的为( D )。
A.关系中存在可分解的属性值B. 关系中允许出现相同的元组C.关系中考虑元组的顺序D.元组中,属性理沦上是无序的,但使用时按习惯考虑列的顺序6. 在关系模型中,下列说法正确的为(B)A.关系中元组在组成主键的属性上可以有空值B.关系中元组在组成主键的属性上不能有空值C.主键值起不了唯一标识元组的作用D.关系中可引用不存在的实体7.下列为非过程语言的为( C )。
A.汇编语言 B.PASCAL语言‘C.关系查询语言D.C语言8.设关系R、s、w各有10个元组,则这三个关系的笛卡尔积的基数为(C)A.10 B.30 C.1000 D.不确定(与计算结果有关)9.关系代数中,一般联接操作由(A)组合而成。
A.笛卡尔积和选择 B.笛卡尔积、选择和投影C.笛卡尔积和投影 D.投影和选择10.设关系R和S的属性个数分别为r和s,那么(R x S)操作结果的属性个数为( A )A.r十s B.r-s C.r×s D.max(r,s)11.设关系R和s的结构相同,且各有100个元组,则这两个关系的并操作结果的元组个数为(D)A.100 B.小于等于100 C.200 D. 小于等于20012.关系代数的交操作可以由(B)操作组合而成。
A.并和差 B.差C.选择 D.联接13.如果两个关系没有公共属性,那么其自然联接操作(A)A.转化为笛卡尔积操作B.转化为联接操作c.转化为外部并操作D.结果为空关系14.设关系R和S的值如下:B)A.1 B.2 C.3 D.415.在14题中,操作结果的元组个数是()。
(完整版)数据库关系代数习题
1.设有如图所示的关系S、SC和C,试用关系代数表达式表示下列查询语句:S C SCS# SNAME AGE SEX1 李强23 男2 刘丽22 女5 张友22 男C# CNAME TEACHERk1 C语言王华k5 数据库原理程军k8 编译原理程军S# C# GRADE1 k1 832 k1 855 k1 922 k5 905 k5 845 k8 80(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)。
(12)检索没有一门课程成绩不及格的学生学号,姓名。
答:本题各个查询语句对应的关系代数表达式表示如下:(1) ΠC#,CNAME(σTEACHER ='程军'(C))(2) ΠS#,SNAME(σAGE>21^SEX ='男'(S))(3) ΠSNAME(S(ΠS#,C#(SC)÷ΠC#(σTEACHER ='程军'(C))))(4) ΠC#(C)-ΠC#(σSNAME ='李强'(S)∞SC)(5) ΠS# (σ1=4^2≠5 (S C×SC))(6) ΠC#,CNAME(C∞(ΠS#,C#(SC)÷ΠS#(S)))(7) ΠS# (SC∞ΠC# (σTEACHER ='程军'(C)))(8) ΠS#,C#(SC)÷ΠC#(σC#=’K1’VC#=’K5’ (C))(9) ΠSNAME(S∞(ΠS#,C#(SC)÷ΠC#(C)))(10) ΠS#,C#(SC)÷ΠC#(σC#=’2’ (S C))(11) ΠS#,SNAME(S∞ΠS#(SC∞(σCNAME ='C语言'(C))))(12)П学号,姓名(学生)-П学号,姓名(σ分数<60(学生∞学习))。
关系代数练习题
关系代数练习题关系代数练习题一、写出关系代数的表达式, 回答下列查询Product (maker , model, t ype)maker( 制造商) model( 型号) t ype( 类型)PC(model, speed, ram, hd, cd, pr ice)model( 型号) speed( 速度) ram( 内存) hd( 硬盘) cd( 光驱) pr ice( 价格)Laptop(model, speed, ram, h d, screen, price) model( 型号) speed( 速度) ram( 内存) hd( 硬盘) s creen( 屏幕) pr ice( 价格) Printer (model, color , t ype, pr ice)model( 型号) color ( 彩色) type( 类型) price( 价格)* ( a) 什么型号的PC 速度至少为150?R1 := σspeed ≥150 (PC)R2 := πmodel(R1)( b) 哪个厂商生产的便携式电脑具有最少1G 字节的硬盘。
R1 := σ(hd ≥1 (Laptop))R2 := Product (R1)R3 := πmaker (R2)( c) 找出厂商B 生产的所有产品( 任一类型) 的型号和价格。
R1 := σmaker=B (Product PC)R2 := σmaker=B (Product Laptop)R3 := σmaker=B (Product Printer)R4 := πmodel,price (R1)R5 := πmodel,price (R2)R6: = πmodel,price (R3)R7 := R4 R5 R6( d) 找出所有彩色激光打印机的型号。
R1 := σcolor = true AND type = ‘激光’(Printer)R2 := πmodel (R1)( e) 找出销售便携式电脑但不销售PC 的厂商。
数据库关系代数习题完整版
数据库关系代数习题Document serial number【NL89WT-NY98YT-NC8CB-NNUUT-NUT108】1.现有关系数据库如下:学生(学号,姓名,性别,专业,奖学金)。
课程(课程号,名称,学分)。
学习(学号,课程号,分数)。
用关系代数表达式实现下列1-4小题:1.检索"英语"专业学生所学课程的信息,包括学号、姓名、课程名和分数。
π学号,姓名,课程名,分数(б专业=英语(学生学习课程))2.检索"数据库原理"课程成绩高于90分的所有学生的学号、姓名、专业和分数。
π学号,姓名,专业,分数(б分数>90Λ名称=数据库原理(学生学习课程))3.检索不学课程号为"C135"课程的学生信息,包括学号,姓名和专业。
π学号,姓名,专业(学生)—π学号,姓名,专业(б课程号=C135(学生学习))4.检索没有任何一门课程成绩不及格的所有学生的信息,包括学号、姓名和专业。
π学号,姓名,专业(学习)—π学号,姓名,专业(б分数>=60(学生学习))2.现有关系数据库如下:学生(学号,姓名,性别,专业、奖学金)。
课程(课程号,名称,学分)。
学习(学号,课程号,分数)。
用关系代数表达式实现下列1—4小题:1.检索“国际贸易”专业中获得奖学金的学生信息,包括学号、姓名、课程名和分数。
π学号,姓名,专业(б奖学金>OΛ专业=国际贸易(学生学习课程))2.检索学生成绩得过满分(100分)的课程的课程号、名称和学分。
π课程号,名称,学分(б成绩=100(学生学习课程))3.检索没有获得奖学金、同时至少有一门课程成绩在95分以上的学生信息,包括学号、姓名和专业。
π课程号,名称,学分(б奖学金=OΛ成绩>95(学生学习课程))4.检索没有任何一门课程成绩在80分以下的学生的信息,包括学号、姓名和专业。
π学号,姓名,专业(б成绩>80(学生学习))3.设有如图所示的关系S、SC和C,试用关系代数表达式表示下列查询语句:S? C? SC(1)检索”程军”老师所授课的课程号(C#)和课程名(CNAME)。
关系代数期末考试试题
关系代数期末考试试题一、选择题(每题2分,共20分)1. 在关系代数中,选择操作用哪个符号表示?A. ⋈B. ⨝C. σD. π2. 以下哪个操作不是关系代数的基本操作?A. 投影B. 选择C. 连接D. 排序3. 笛卡尔积操作在关系代数中用哪个符号表示?A. ⋈B. ×C. ⨝D. σ4. 以下哪个操作可以用于消除重复的元组?A. 投影B. 选择C. 连接D. 并集5. 以下哪个不是关系代数的集合操作?A. 并B. 差C. 交D. 笛卡尔积6. 哪个操作可以用于改变元组中属性的顺序?A. 投影B. 选择C. 排序D. 重命名7. 在关系代数中,哪个操作可以用于合并两个表?A. 投影B. 选择C. 连接D. 差8. 以下哪个操作可以用于从关系中删除不符合条件的元组?A. 投影B. 选择C. 连接D. 并集9. 以下哪个操作不能用于关系代数?A. 聚合B. 选择C. 连接D. 排序10. 哪个操作可以用于从元组中删除某些属性?A. 投影B. 选择C. 连接D. 差二、简答题(每题5分,共20分)1. 解释什么是关系代数,并给出其基本操作。
2. 描述笛卡尔积操作的特点,并给出一个例子。
3. 解释什么是自然连接,并说明它与笛卡尔积的区别。
4. 什么是关系代数中的重命名操作,它有什么作用?三、计算题(每题10分,共30分)1. 给定两个关系R和S,其中R(A, B)和S(B, C),请用关系代数表达式表示R和S的自然连接。
2. 如果有一个关系R(A, B, C),请用关系代数表达式表示选择所有A 属性值为a的元组。
3. 给定两个关系R(A, B)和S(B, C),请用关系代数表达式表示R和S 的笛卡尔积。
四、综合应用题(每题15分,共30分)1. 假设有一个数据库包含两个关系:学生(学号,姓名,性别)和课程(课程号,课程名)。
编写一个关系代数表达式,以找出所有选修了“数据库原理”课程的学生的姓名。
关系代数练习题
❖ 6、查询至少选修两门课的学生学号 π1(σ1=4 ∧2 =5 (SC x SC))
❖ 7、查询全部学生都选修的课程的课程号与课程名 πcno,cname(C ∞ (πsno,cno (SC) ÷ πsno (S) ))
π SNO,SANME (σ CNAME='MATHS‘ (S ∞ SC ∞ C)) ❖ (4)检索选修课程号为C2或C4的学生学号
π SNO (σ CNO=‘C2’∨CNO=‘C4’ (SC))
❖(5) 检索至少选修课程号为C2和C4的学生学号 π1(σ 1=4∧2='C2'∧5='C4'(SC×SC))
关系代数练习题
It is applicable to work report, lecture and teaching
4、对于查询具有全部特征的操作,一般要用除法操 作表示。 例如:查询学习全部课程的学生学号,可用如下 形式: π sno,cno(SC) ÷ π cno(Course)
例:设有三个关系: S(sno,sname,sex,age) SC(sno,cno,grade) C(cno,cname,teacher)
❖ 8、查询选修课程包含LIU老师所授全部课程的学生学号 πsno,cno(SC) ÷πcno (σteacher=‘LIU’(C ))
❖ (1)检索学习课程号为C2的学生学号与成绩 ❖ (2)检索学习课程号为C2的学生学号与 ❖ (3)检索选修课程名为MATHS的学生学号与 ❖ (4)检索选修课程号为C2或C4的学生学号 ❖ (5)检索至少选修课程号为C2和C4的学生学号 ❖ (6)检索不学C2课的学生与年龄。 ❖ (7)检索学习全部课程的学生。 ❖ (8)检索所学课程包含S3所学课程的学生学号
关系代数练习
(2) 检索学习课程号为C2的学生学号与姓名
π SNO,SNAME (σ CNO='C2‘ (S
SC))
由于这个查询涉及到两个关系S和SC,因此先对这两 个关系进行自然连接,同一位学生的有关的信息,然后 再执行选择投影操作。 此查询亦可等价地写成: π SNO,SNAME(S) (π SNO (σ CNO='C2‘ (SC))) 这个表达式中自然连接的右分量为"学了C2课的学生 学号的集合"。这个表达式比前一个表达式优化,执行 起来要省时间,省空间。
学生关系 S(SNO,SNAME,AGE,SEX) 选修关系 SC(SNO,CNO,GRADE) 课程关系 C(CNO,CNAME,TEACHER)
(4)检索选修课程号为C2或C4的学生学 号。
π SNO (σ CNO='C2'∨CNO='C4‘ (SC))
学生关系 S(SNO,SNAME,AGE,SEX) 选修关系 SC(SNO,CNO,GRADE) 课程关系 C(CNO,CNAME,TEACHER)
(6)检索学习全部课程的学生学号。 编写这个查询语句的关系代数过程如下:
(a) 学生选课情况可用π SNO,CNO (SC)表示;
(b) 全部课程可用π CNO (C)表示;
学生关系 S(SNO,SNAME,AGE,SEX) 选修关系 SC(SNO,CNO,GRADE) 课程关系 C(CNO,CNAME,TEACHER)
π
Sno,Sname
( S SC
学生S (Sno,Sname,Ssex,Sage,Sdept) 课程C (Cno,Cname,Cpno,Ccredit) 学习SC (Sno,Cno,Grade)
关系代数练习题
一、二章习题一、选择题1、数据库中,数据的物理独立性是指:A、DB和DBMS的相互独立B、用户程序与DBMS的相互独立C、用户的应用程序与存储在磁盘上的数据库中的数据相互独立;D、应用程序与数据库中数据的逻辑结构相互独立。
2、数据库技术采用分级方法将数据库的结构划分成多个层次,是为了提高数据库的-------和---------:A、数据共享B、逻辑独立性;C、管理规范性;D、物理独立性;3、在数据库系统中,通常采用三级模式来描述数据库,其中①-----是用户与数据库的接口,是应用程序可以见到的数据描述,②------是对数据整体的③------的描述,而④-----描述了数据的⑤-----。
A、外模式;B、概念模式;C、逻辑结构;D、内模式;E、层次结构;F、物理结构;4、在数据库的体系结构中,数据库存储结构的改变会引起内模式的改变。
为使数据库的模式保持不变,从而不必修改应用程序,须改变模式与内模式之间的映像。
这样,使数据库具有_____A、数据独立性B、逻辑独立性C、物理独立性;D、操作独立性。
5、现实世界中客观存在并能相互区别的事物为:A、实体B、实体集;C、字段;D、记录。
6、现实世界中事物的特征在信息世界中称为A、实体B、实体标识符C、属性;D、关键码。
7、采用二维表格结构表达实体类型及实体间联系的数据模型是A、层次模型;B、网状模型;C、关系模型;D、对象模型。
8、DB、DBMS及DBS三者间的关系是A、DB包括DBMS、DBSB、DBS包括DB和DBMS;C、DBMS包括DB、DBSD、DBS与DB、DBMS无关。
9、数据库系统中,用_____描述全部数据的整体逻辑结构。
A、外模式B、存储模式C、内模式D、概念模式。
10、数据库系统中,用户使用的数据视图用____描述,该视图是用户和数据库系统之间的接口。
A、外模式B、存储模式;C、内模式;D、概念模式。
11、在数据库中,产生数据不一致的根本原因是A、数据存储量大B、没有严格保护数据C、未对数据进行完整性控制D、数据冗余。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
习题四1. 试述关系模型的三个组成部分。
关系结构、关系操作、关系完整性约束.关系是由(R,U,D,dom,F )组成,R 为关系名,U 位组成关系的元组属性集合, D 为属性集合U 来自的域,dom 为对象关系的映像集合, F 为属性依赖关系集合。
关系操作为关系代数、关系演算、关系映象操作,此语言表达能和功能强大,约束:参照完整性约束,用户自定义约束,实体完整性约束。
2. 试述关系数据语言的特点和分类。
关系操作语言灵活方便、语言表达能力和功能强,其特点:操作一体化,操作方式一次一集合,高度的非过程化的操作,关系操作语言包括:关系代数语言、关系演算语言、基于映像的语言,关系代数语言是对关系的运算来表达查询的语言,关系演算语言查询元组的应该满足的谓词条件的运算查询语言,基于映像的语言具有关系代数与关系演算的语言的双重特点语言查询!3. 定义并解释下列术语,说明它们之间的联系与区别。
1)主码、候选码、外码。
在一个关系中某个属性(或属性组)能够唯一标识一个元组,则称该属性为候选码,选择其中一个为主码,在关系R 中属性 F 不是R 的码,h 为K 关系的主码,如果 F 与h 相对应,则称 F 为管系R 的外码2)笛卡尔积、关系、元组、属性、域。
给定一组域D1,D2,D3 3)关系、关系模式、关系数据库。
4. 试述关系模型的完整性规则。
在参照完整性中,为什么外码属性的值也可以为空?什么情况下才可以为空?5. 试述等值连接与自然连接的区别和联系。
6. 对于学生选课关系,其关系模式为:学生(学号,姓名,年龄,所在系);课程(课程名,课程号,先行课);选课(学号,课程号成绩)。
用关系代数完成如下查询。
1)求学过数据库课程的学生的姓名和学号。
2)求学过数据库和数据结构的学生姓名和学号。
3)求没学过数据库课程的学生学号。
4)求学过数据库的先行课的学生学号。
7. 设有一个SPJ 数据库,包括S,P ,J,SPJ 四个关系模式:S (SNO ,SNAME ,STATUS ,CITY );P (PNO ,PNAME ,COLOR ,WEIGHT );J(JNO ,JNANE ,CITY );SPJ (SNO ,PNO ,JNO ,QTY )。
其中:供应商表S 由供应商代码(SNO )、供应商姓名(SNAME )、供应商状态(STATUS )、供应商所在城市(CITY )组成;零件表P 由零件代码(PNO )、零件名(PNAME )、颜色(COLOR )、重量(WEIGHT )组成;工程项目表J 由工程项目代码(JNO )、工程项目名(JNAME )、工程项目所在城市(CITY )组成;供应情况表SPJ 由供应商代码(SNO )、零件代码(PNO )、工程项目代码(JNO )、供应数量组成(QTY )组成,表示某供应商供应某种零件给某工程项目的数量为QTY 。
试用关系代数完成如下查询:1)求供应工程J1 零件的供应商号码SNO 。
2)求供应工程J1 零件P1 的供应商号码SNO 。
3)求供应工程J1 零件为红色的供应商号码SNO 。
4)求没有使用天津供应商生产的红色零件的工程号。
5)求至少用了供应商S1 所供应的全部零件的工程号。
8. 设属性 A 是关系R 的主属性,则属性 A 不能取空值小(NULL ),这是。
A. 实体完整性规则B. 参照完整性规则C. 用户定义完整性规则D. 域完整性规则9. 下面对于关系的叙述中,不正确的是。
A. 关系中的每个属性是不可分解的B. 在关系中元组的顺序是无关紧要的C. 任意的一个二维表都是一个关系D. 每一个关系只有一种记录类型10. 设关系R 和S 的元组个数分别为100 和300 ,关系T 是R 与S 的笛卡尔积则T 的元组个数是。
A. 400B. 10000C. 30000D. 9000011. 设关系R 与关系S 具有相同的目(或称度),且相对应的属性的值取自同一个域,则R-(R-S )等于。
A. R ∪SB. R ∩SC. R ╳SD. R -S习题四解答1.答:关系模型的三个组成部分为关系结构、关系操作和关系完整性约束。
在关系模型中,无论是实体集,还是实体集之间的联系均由单一的关系表示。
关系模式可以形式化地表示为:R(U,D ,Dom ,F ),其中R 为关系名,U 为组成该关系的属性集合,D 为属性组U 中属性所来自的域,Dom 为属性向域的映像的集合, F 为属性间数据的依赖关系集合。
关系操作语言包括关系代数、关系演算和基于映像的语言。
关系操作语言灵活方便.表达能力和功能都非常强大。
其主要特点是:关系操作语言操作一体化;关系操作的方式是一次一集合方式;关系操作语言是高度非过程化的语言。
关系模型中有三类完整性约束:实体完整性、参照完整性和用户定义的完整性。
2 答:关系操作语言灵活方便,表达能力和功能都非常强大,其主要特点是:关系操作语言操作一体化;关系操作的方式是一次一集合方式;关系操作语言是高度非过程化的语言。
关系操作语言包括关系代数、关系演算和基于映像的语言。
关系代数语言是用对关系的运算来表达查询要求的语言。
关系演算语言是用查询得到的元组应满足的谓词条件来表达查询要求的语言。
基于映像的语言是具有关系代数和关系演算双重特点的语言。
3. 答:1)若关系中的某一属性组(或单个属性)的值能惟一标识一个元组,则称该属性组(或属性)为候选码。
当一个关系有多个候选码时,应选定其中的一个候选码为主码;而如果关系中只有一个候选码,这个惟一的候选码就是主码。
设F 是基本关系R 的一个或一组属性,但不是关系R 的主码(或候选码)。
如果 F 与基本关系s 的主码KS 相对应,则称厅是基本关系R 的外码。
2)给定一组域D1 ,D2 ,,Dn .这些域中可以有相同的部分,则D1 ,D2 ,,Dn的笛卡地积为:D1 ×D2 ××Dn ﹦({dl,d2,,dn)∣di∈Di ,i=1 ,2,,n}。
D1 ×D2 ××Dn 的子集称作在域D1 ,D2 ,,Dn 上的关系,表示为:R(D1 ,D2 ,,Dn )。
其中,R 表示关系的名字,n 是关系的目。
笛卡儿积集合中的每一个元素(dl,d2,,dn )称为一个元组。
关系中的每一列称为一个属性。
域为数据集合,属性值来源于域。
3)关系是留卡儿积的有限子集,所以关系也是一个二维表。
关系的描述称为关系模式。
关系模式可以形式化地表示为:R(U,D,Dom ,F )。
其中R 为关系名,它是关系的形式化表示;U 为组成该关系的属性集合; D 为属性组U 中属性所来自的域;Dom 为属性向域的映像的集合; F 为属性问数据的依赖关系集合。
在某一应用领域中,所有实体集及实体之间联系所形成关系的集合就构成了一个关系数据库。
4. 答:关系模型中有三类完整性约束:实体完整性、参照完整性和用户定义的完整性。
关系的实体完整性规则为:若属性 A 是基本关系R 的主属性,则属性 A 的值不能为空值。
关系的参照完整性规则为:若属性(或属性组) F 是基本关系R 的外码,它与基本关系S 的主码Ks 相对应(基本关系R 和S 不一定是不同的关系),则对干R 中每个元组在 F 上的值必须取空值(F 的每个属性值均为空值)或者等于S 中某个元组的主码值。
用户定义的完整性就是针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。
由于外码在被参考关系 A 中,是非主属性,其值为空,不影响关系的实体完整性。
当外码值不清楚或不确定时,可以设为空值,此时参照表中没有对应的记录与之匹配。
5.答:等值连接是从关系R 和S 的广义笛卡儿积中选取 A 和 B 属性值相等的那些元组。
自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。
6. 答:7. 答:8. 答:A9. 答:D10 .答:C11 .答:B7.设有一个SPJ 数据库,包括S,P ,J,SPJ 四个关系模式:S (SNO ,SNAME ,STATUS ,CITY );P (PNO ,PNAME ,COLOR ,WEIGHT );J(JNO ,JNANE ,CITY );SPJ (SNO ,PNO ,JNO ,QTY )。
其中:供应商表S 由供应商代码(SNO )、供应商姓名(SNAME )、供应商状态(STATUS )、供应商所在城市(CITY )组成;零件表P 由零件代码(PNO )、零件名(PNAME )、颜色(COLOR )、重量(WEIGHT )组成;工程项目表J 由工程项目代码(JNO )、工程项目名(JNAME )、工程项目所在城市(CITY )组成;供应情况表SPJ 由供应商代码(SNO )、零件代码(PNO )、工程项目代码(JNO )、供应数量组成(QTY )组成,表示某供应商供应某种零件给某工程项目的数量为QTY 。
试用关系代数完成如下查询:1)求供应工程J1 零件的供应商号码SNO 。
2)求供应工程J1 零件P1 的供应商号码SNO 。
3)求供应工程J1 零件为红色的供应商号码SNO 。
4)求没有使用天津供应商生产的红色零件的工程号。
5)求至少用了供应商S1 所供应的全部零件的工程号。
3. 设工程_零件数据库中有四个基本表:供应商(供应商代码,姓名,所在城市,联系电话);工程(工程代码,工程名,负责人,预算);零件(零件代码,零件名,规格,产地,颜色);供应零件(供应商代码,工程代码,零件代码,数量)试用SQL 语句完成下列操作.l)找出天津市供应商的姓名和电话。
2)查找预算在50000-100000 元之间的工程的信息,并将结果按预算降序排列。
3)找出使用供应商S1 所供零件的工程号码。
4)找出工程项目J2 使用的各种零件名称及其数量。
5)找出上海厂商供应的所有零件号码。
6)找出使用上海产的零件的工程名称。
7)找出没有使用天津产零件的工程号码。
8)把全部红色零件的颜色改成蓝色。
9)将由供应商S5 供给工程代码为J4 的零件P6 改为由S3 供应,并作其他必要的修改。
10)从供应商关系中删除S2 的记录,并从供应零件关系中删除相应的记录。
8) UPDATE 零件SET 颜色=‘蓝色’WHERE 颜色=‘红色;’9) UPDATE 供应零件SET 供应商代码=‘S3 ’WHERE 供应商代码=‘S5 ’AND 工程代码=‘J4 ’AND 零件代码=‘P6 ’;10 )DELETEFROM 供应零件WHERE 供应商代码=‘S2 ’;DELETEFROM 供应商WHERE 供应商代码=‘S2 ’9. 设要建立学生选课数据库,库中包括学生、课程和选课 3 个表,其表结构为:学生(学号,姓名,性别,年龄,所在系);课程(课程号,课程名,先行课),选课(学号,课程号,成绩)。