练习题-关系代数表达式
数据库练习题
一、关系运算1、设有两个关系R(A,B)和S(B,C),请写出与下面关系代数表达式等价的SQL语句。
πB(R) -πB(σc=`C56`(S))2、已知关系R、S如下所示,以表的形式给出下列运算结果。
(1)σX=Z(R ╳ S)已知关系模式如下:学生:S(Sno,Sname,Ssex,Sage,Sdept) 对应学生的学号,姓名,性别,年龄,系;课程:C(Cno,Cname,Tname) 对应课程的课程号,课程名,授课教师名字;学生选课:SC(Sno,Cno,Grade)对应学生选修课程的成绩。
3、检索至少选修两门课程的学生学号及姓名。
4、查询王力同学不学课程的课程名。
5、查询既选修了课程1也选修了课程2的学生学号。
6、检索全部学生都选修的课程的课程号与课程名。
7、查询刘宏老师所授课程的每门课程的学生平均成绩。
8、为“三建”工程项目建立一个供应情况视图,包括SNO、PNO、QTY。
9、试修改Student表结构,实现学生性别取值为‘男’,‘女’的约束。
答案:1、SELECT BFROM RWHERE B NOT IN(SELECT BFROM SWHERE C=`C56`);2、(bebb,cccc) ,(ccc)3、检索至少选修两门课程的学生学号及姓名。
select sno,sname from student where sno in(select sno from scgroup by snohaving count(*)>=2);4、查询王力同学不学课程的课程名。
SELECT CNAME FROM CWHERE NOT EXISTS(SELECT*FROM SCWHERE O=O AND SNO =(SELECT SNO FROM STUDENT WHERE SNAME=’王力’));5、查询既选修了课程1也选修了课程2的学生学号。
SELECT SnoFROM SCWHERE Cno='1' AND Sno IN(SELECT SnoFROM SCWHERE Cno='2');6、检索全部学生都选修的课程的课程号与课程名。
数据库关系模式习题
(一)现有关系数据库如下:学生(学号,姓名,性别,专业,奖学金)课程(课程号,名称,学分)率学习(学号,课程号,分数)用关系代数表达式实现下列1-4 小题。
1. 检索“英语”专业学生所学课程的信息,包括学号、姓名、课程名和分数。
2. 检索“数据库原理”课程成绩高于90 分的所有学生的学号、姓名、专业和分数。
3. 检索不学课程号为“C135”课程的学生信息,包括学号,姓名和专业。
4. 检索没有任何一门课程成绩不及格的所有学生的信息,包括学号、姓名和专业。
设学生S(学号sno,姓名sname,专业major,奖学金money)课程C(课程号cno,课程名cname,分数grade)学习SC(学号sno,课程号cno,分数grade)1.πsno,sname,cname,grade(σmajor=’英语’(S) ∞C∞ SC)2. πsno,sname,major,grade(σcname=’数据库原理’ (C) ∞(σgrade >90(SC) ∞S)3. πsno,sname,major ((πsno(S)-πsno (σcno=’C135’(SC)) ∞S)4. πsno,sname,major(( πsno(SC)-πsno(σgrade<60(SC) ) ∞S)(二)设有关系 S、SC 和 C:S (snum,sname,age,sex),例:(1, “李强”,23,“男”)是一条数据记录SC(snum, cnum, score), 例:(1, “C1”,83) 是一条数据记录。
C(cnum,cname, teacher)据记录。
例:(“C1”, “数据库原理”, “王华”)是一条数据记录。
试用关系代数表达式完成下列操作:1.检索“刘祥”同学不学课程的课程号。
2.检索有一门课程成绩在90 分以上的男同学的姓名。
3.列出没有选修“人工智能”的学生名单。
4.找出选修了袁老师教的所有课程的学生名单。
关系代数习题
关系代数习题.作者: 日期: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.U - X (T nB.U - (T nC.U n X (T nD.U n (T n11.关系数据库中的投影操作是指从关系中()。
A.抽出特定记录B.抽出特定字段C.建立相应的影像D.建立相应的图形12. 从一个数据库文件中取出满足某个条件的所有记录形成一个新的数据库文件的操作是()操作。
A.投影B.联接C.选择D.复制13.关系代数中的联接操作是由()操作组合而成。
A.选择和投影B.选择和笛卡尔积C .投影、选择、笛卡尔积 D.投影和笛卡尔积1 4.自然联接是构成新关系的有效方法。
关系代数习题讲解
• (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)学生表(学号,姓名,性别,出生年月,住址,电话,班级号)
(2)课程表(课程号,课程名,课时数,学分数)
(3)成绩表(学号,课程号,成绩)
(4)班级表(班级号,班级名,专业名,入学年,人数,班长学号)
写出下列操作的关系代数表达式
1.找出所有被学生选修了的课程号
2.找出班级名为“xxx”班级的女同学的个人基本信息。
3.找出姓李的学生的个人基本信息
4.查询“xxx”班级的班长基本信息
5.查询与李勇在同一班的学生的基本信息
6.查询所有管理类专业(如:工商管理、信息管理、旅游管理、管理科学与工
程等)学生的基本信息。
7.查询选修了课程名“xxx“的学生的学号和姓名
8.查询李勇所在班级的学生人数
9.找出“2007信管“班中没有选修课程“数据库“的学生的学号、姓名
10.列出“xxx“同学所修全部课程的名称和成绩
11.查询全体学生的学习信息,要求按学号排序
12.找出课程名为‘操作系统’的平均成绩、最高分、最低分
13.找出今天(或1月20日)过生日的学生学号、姓名和班级名
14.找出选修了全部课程的学生学号、姓名和班级
15.统计选修了课程名“xxx“的学生人数
16.统计每门课程的选课人数
17.求每个班学生每门课的平均成绩
18.查询选修课程中没有不及格分数的学生学号、姓名和班级
19.查询有3门课程不及格的学生的学号、姓名及所在的班级名
20.求2009信息管理专业学生中已选修过管理信息系统的先修课的学生姓名。
P。
关系代数练习
这里(SC×SC)表示关系SC自身相 乘的乘积操作,其中数字1,2,4,5都 为它的结果关系中的属性序号。 比较这一题与上一题的差别。
(6) 检索不学C2课的学生姓名与年龄。
π SNAME,AGE(S)-π SNAME,AGE (σ SC)) CNO='C2'(S
这个表达式用了差运算,差运算的左分 量为"全体学生的姓名和年龄",右分量为 "学了C2课的学生姓名与年龄"。
试用关系代数表示下列查询语句: (1)查询年龄不大于22岁的女学生的姓名和 学号;
(2)查询选修了“李军”老师所授的课程名 为“数据库”的学生学号和姓名;
(3)查询至少选修了教师编号(Tno)为 826的老师所授全部课程的学生学号。
2、查询至少选修了两门课程的学生学号。
Sno (σ [1]=[4] ∧ [2]≠[5]
π
(SC×SC))
3、查询选修了1号课程的学生姓名。
(σ Cno=’1’ (S SC))
π
Sname
4、查询没有选修数据库课程的学生姓名。
(S)-π Sname (σ Cname=’数据库’ ( S C)
下面用关系代数表达式表达每个查询语 句。
(1) 检索学习课程号为C2的学生学号与成绩。 (2) 检索学习课程号为C2的学生学号与姓名 (3)检索选修课程名为MATHS的学生学号与姓名。 (4) 检索选修课程号为C2或C4的学生学号。 (5) 检索至少选修课程号为C2和C4的学生学号。 (6) 检索不学C2课的学生姓名与年龄。 (7) 检索学习全部课程的学生姓名。 (8) 检索所学课程包含S3所学课程的学生学号。
作业3-关系代数
关系模式如下:
⏹职工: E(ename, eno, bdate, addr, salary, dno)
姓名工号出生日期家庭地址工资所在部门编号
⏹部门: D(dname, dno, eno)
部门名称部门编号部门负责人的工号
⏹项目: P(pname, pno, city, dno)
项目名称项目编号所在城市主管部门编号
⏹工作: W(eno, pno, hours)
职工工号项目编号工作时间
⏹职工家属:Depend(eno, name, sex)
职工工号家属的姓名家属的性别
请用关系代数表达式来表示下述数据查询操作。
1)检索所有部门负责人的工号和姓名;
2)检索职工Smith所参与的项目的编号和名称;
3)检索拥有两个或两个以上家属的职工的姓名;
4)检索不带家属的职工的姓名;
5)检索参加过‘p2’号项目的职工的工号;
6)检索只参加过‘p2’号项目的职工的姓名;
7)检索参加了所有项目的职工的工号;
8)检索全体3号部门的职工都参加了的项目的编号和名称;
9)检索工资收入最高的职工的姓名;
10)查询每一个部门中工资收入最高的职工,结果返回部门编号以及该部门中工资收入最高
的职工的工号。
11)检索只参加过一个项目的职工的姓名;。
数据库ER图练习
设有一个供应商、零件、工程项目数据库中包含四个关系:供应商关系S、零件关系P、工程项目关系J和供应关系SPJ,如下图所示。
供应商关系S供应关系SPJ
Sno
Sname
City
S1
精益
天津
S2
胜锡
北京
S3
东方红
北京
S4
金叶
天津
S5
泰达
南京
Sno
Pno
Jno
(3)求供应给工程J1红色零件的供应商号码SNO;
(4)求没有使用天津供应商生产的红色零件的工程号JNO;
(5)求至少用了供应商S1所供应的全部零件的工程号JNO。
Qty
S1
P1
J1
200Hale Waihona Puke S1P1J3
100
S1
P1
J4
700
S1
P2
J2
100
S2
P3
J1
400
S2
P3
J2
200
S2
P3
J3
500
S2
P3
J4
400
S2
P5
J2
400
S2
P5
J1
100
S3
P1
J1
200
S3
P3
J3
200
S4
P5
J4
100
S4
P6
J1
300
S4
P6
J3
200
S5
P2
J4
100
S5
P3
J1
200
S5
(完整版)数据库第二章关系代数习题
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(学生∞学习))。
关系代数习题参考
一、设教学库中有三个关系:学生关系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。
检索至少选修两门课程的学生学号。
数据库关系代数习题
答:因为关系是一个集合,因此不考虑、为什么关系中不允许 有重复元组?
答:如果关系中有重复元组,那么就无 法用键来标识唯一的元组。因此在关系 模型中对关系作了限制。
整理课件
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、笛卡尔积、等值联接、自 然联接三者之间有什么区别?
关系代数习题(17)
查询李源源不学的课程号与课程名 不学的课程号与课程名 πC#, CNAME(C)πC#, CNAME (σSNAME=‘李源源‘(S SC C)) 李源源‘ 李源源 查询没有选修张锦东所讲课程的学生姓名 所讲课程的学生姓名 πSNAME(S)πSNAME (σTNAME=‘张锦东‘(S SC C)) 张锦东‘ 张锦东 ??? πSNAME (σTNAME≠‘张锦东‘(S SC C)) 张锦东‘ 张锦东
π S#,C# (SC) ÷πC# (σC#=‘C1’∨ C#=‘C3’(C))
查询所学课程包含李源源所学全部课程的学生学号 πS#,C#(SC)÷πC#(σSNAME=‘李源源‘(S ÷ 李源源‘ 李源源 SC))
查询所学课程包含张锦东所讲全部课程的学生学号 πS#,C#(SC)÷πC#(σTNAME=‘张锦东‘(SC ÷ 张锦东‘ 张锦东 ??? πS#(σTNAME=‘张锦东‘(SC 张锦东‘ 张锦东 C)) C))
(3)查询李源源所选修课程的课程号、 课程名和成绩 πC#,CNAME,GRADE (σSNAME=‘李源源‘(S SC C)) 李源源‘ 李源源
此查询亦可等价地写成: 此查询亦可等价地写成:
πC#,CNAME,GRADE((σSNAME='李源源‘(S)) SC C) 李源源‘ 李源源 πC#,CNAME,GRADE(πS#(σSNAME='李源源‘(S)) SC 李源源‘ 李源源
查询选修课程号为C2或C4的学生学号 πS#(σC#='C2'∨C#='C4‘ (SC)) ∨ 查询至少选修课程号为C2和 的学生学号 查询至少选修课程号为 和C4的学生学号 π1(σ1=4∧2='C2'∧5='C4‘(SC×SC)) × ∧ ∧ πs#(σC#='C2'(SC)) πs#(C#='C4'(SC)) 这里( × )表示关系SC自身相乘的乘积 这里(SC×SC)表示关系 自身相乘的乘积 操作,其中数字1, , , 都为它的结果关系 操作,其中数字 ,2,4,5都为它的结果关系 中的属性序号。 中的属性序号。 比较这一题与上一题的差别。 比较这一题与上一题的差别。
数据库原理与应用,第三章练习
利用图3-9所给的三个关系,完成如下关系代数表达式:1、查询信息系学生的选课情况,列出学号、姓名、课程号和成绩。
2、查询“VB”课程的考试情况,列出学生姓名、所在系和考试成绩。
3、查询考试成绩高于90分的学生的姓名、课程名和成绩。
4、查询至少选修了9512101号学生所选的全部课程的学生的姓名和所在系。
设有一个学生-课程数据库,包括学生关系Student(sno,sname,ssex,sage,sdept),课程关系Course(cno,cname,ccredit)和选修关系SC(sno,cno,grade),注:sno:学号,sname:姓名,ssex:性别,sage:年龄,sdept:系别,cno:课程号,cname:课程名,ccredit:学分,ccredit:成绩。
分别写出符合下面要求的关系代数表达式:(1)查询信息系(IS系)全体学生(2)查询学生的姓名和所在系(3)查询选修了2号课程的学生的学号设有四个关系模式仓库(仓库号,城市,面积)职工(仓库号,职工号,工资)供应商(供应商号,供应商名,地址)订购单(职工号,供应商号,订购单号,订购日期)用关系代数完成以下检索:(1)检索在上海工作的职工的工资。
(2分)(2)检索和职工E1、E4、E7有联系的供应商的名称。
(3分)考虑下面包含学生选课信息的关系:Student(学号、姓名、性别、年龄、所在系)Course(课程号、课程名、学分、学期、学时)Sc(学号、课程号、成绩)试用关系代数完成以下检索:(9分,3分/题)(1).查询在第三学期开设的课程情况,列出课程号、课程名、学分、学时。
(2).查询信息系学生的选课情况,列出学号、姓名、课程号和成绩。
(3).查询“VB”课程的考试情况,列出学生姓名,所在系和考试成绩。
假设某酒店数据库中有如下的几个关系模式:客户个人信息表(身份证号,姓名,性别,年龄,工作单位)客户入住信息(身份证号,客房号,入住时间,退房时间)客房(客房号,客房类型号)定价(客房类型号,客房类型,单价)订票(身份证号,机票号,订票时间)机票(机票号,起始地,目的地,起飞时间,到达时间,机票价格,机票状态,航空公司号)航空公司(航空公司号,航空公司,电话)雇员(雇员号,姓名,雇用日期,被投诉次数)打扫(雇员号,客房号)试用关系代数完成如下操作:(10分,2分/小题)(1)查询各客户的姓名和工作单位。
数据库第二章关系代数习题
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)。
∏C#,CNAME(δTEACHER=程军(C))(2)检索年龄大于21的男学生学号(S#)和姓名(SNAME)。
∏S#,SNAME(δAGE>21∧SEX=男(S))(3)检索至少选修”程军”老师所授全部课程的学生姓名(SNAME)。
∏SNAME((∏S#,C#(SC)÷∏C#(δTEACHER=程军(C)))S)(4)检索”李强”同学不学课程的课程号(C#)。
∏C#(C)-∏C#(δSNAME=李强(S)SC)(5)检索至少选修两门课程的学号(S#)。
∏S#(δ1=4∧2≠5(SC×SC))(6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。
∏C#,CNAME(∏S#,C#(SC)÷∏S#(S)C)(7)检索选修课程包含”程军”老师所授课程之一的学生学号(S#)。
∏C#(δTEACHER=程军(C)SC)(8)检索选修课程号为k1和k5的学生学号(S#)。
∏S#,C#(SC)÷∏C#(δC#=k1∨C#=k5(C))(9)检索选修全部课程的学生姓名(SNAME)。
∏SNAME((∏S#,C#(SC)÷∏C#(C))S)(10)检索选修课程包含学号为2的学生所选修课程的学生学号(S#)。
∏S#,C#(SC)÷∏C#(δS#=2(SC))(11)检索选修课程名为”C语言”的学生学号(S#)和姓名(SNAME)。
(完整版)数据库关系代数习题
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)。
关系代数练习题
❖ 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所学课程的学生学号
关系代数练习题
一、二章习题一、选择题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)学生表(学号,姓名,性别,出生年月,住址,电话,班级号)
(2)课程表(课程号,课程名,课时数,学分数)
(3)成绩表(学号,课程号,成绩)
(4)班级表(班级号,班级名,专业名,入学年,人数,班长学号)
写出下列操作的关系代数表达式
1.找出所有被学生选修了的课程号
2.找出班级名为“xxx”班级的女同学的个人基本信息。
3.找出姓李的学生的个人基本信息
4.查询“xxx”班级的班长基本信息
5.查询与李勇在同一班的学生的基本信息
6.查询所有管理类专业(如:工商管理、信息管理、旅游管理、管理科学与工
程等)学生的基本信息。
7.查询选修了课程名“xxx“的学生的学号和姓名
8.查询李勇所在班级的学生人数
9.找出“2007信管“班中没有选修课程“数据库“的学生的学号、姓名
10.列出“xxx“同学所修全部课程的名称和成绩
11.查询全体学生的学习信息,要求按学号排序
12.找出课程名为‘操作系统’的平均成绩、最高分、最低分
13.找出今天(或1月20日)过生日的学生学号、姓名和班级名
14.找出选修了全部课程的学生学号、姓名和班级
15.统计选修了课程名“xxx“的学生人数
16.统计每门课程的选课人数
17.求每个班学生每门课的平均成绩
18.查询选修课程中没有不及格分数的学生学号、姓名和班级
19.查询有3门课程不及格的学生的学号、姓名及所在的班级名
20.求2009信息管理专业学生中已选修过管理信息系统的先修课的学生姓名。