数据库系统教程1-7章课后答案(施伯乐)(第二版)(5)
FROM S, R RX, R RY
WHERE S.A=RX.A AND RX.B>RY.B;
3.6 试叙述SQL语言的关系代数特点和元组演算特点。 答:SQL的关系代数特点如下:
① 有关系代数运算的并、交、差、自然联接等运算符;
② FROM子句体现了笛卡尔积操作,WHERE子句体现了选择操作,SELECT子句体现
了投影操作。
SQL的元组演算特点如下:
① FROM子句中的基本表名应视为“元组变量”,属性名应视为“元组分量”; ② 有存在量词EXISTS符号。
3.7 试用SQL查询语句表达下列对3.2题中三个基本表S、SC、C的查询:
① 在表C中统计开设课程的教师人数。 ② 求选修C4课程的女学生的平均年龄。
③ 求LIU老师所授课程的每门课程的平均成绩。 ④ 统计每个学生选修课程的门数(超过5门的学生才统计)。要求输出学生学号和选修门
数,查询结果按门数降序排列,若门数相同,按学号升序排列。 ⑤ 检索学号比WANG同学大,而年龄比他小的学生姓名。 ⑥ 在表SC中检索成绩为空值的学生学号和课程号。 ⑦ 检索姓名以L打头的所有学生的姓名和年龄。 ⑧ 求年龄大于女同学平均年龄的男学生姓名和年龄。 ⑨ 求年龄大于所有女同学年龄的男学生姓名和年龄。 解:① SELECT COUNT(DISTINCT TEACHER) FROM C;
② SELECT AVG(AGE) FROM S, SC
WHERE S.S#=SC.S# AND C#=’C4’ AND SEX=’F’; ③ SELECT C.C#,AVG(GRADE) FROM SC,C
WHERE SC.C#=C.C# AND TEACHER=‘LIU’ GROUP BY C.C#;
④ SELECT S#, COUNT(C#) FROM SC
GROUP BY S#
HAVING COUNT(*)>5 ORDER BY 2 DESC, 1; ⑤ SELECT SNAME FROM S
WHERE S#>ALL(SELECT S# FROM S
WHERE SNAME=’WANG’) AND AGE
FROM S
WHERE SNAME=’WANG’);
⑥ SELECT S#, C# FROM SC
WHERE GRADE IS NULL;
(2003/9/21) (GJ-DA) (共2页) 目录--21
⑦ SELECT SNAME, AGE FROM S
WHERE SNAME LIKE ’L%’; ⑧ SELECT SNAME, AGE FROM S
WHERE SEX=’M’
AND AGE>(SELECT AVG(AGE)
FROM S
WHERE SEX=’F’);
⑨ SELECT SNAME, AGE FROM S
WHERE SEX=’M’ AND AGE>ALL(SELECT AGE
FROM S
WHERE SEX=’F’);
3.8 对于下面的关系R和S,试求出下列各种联接操作的执行结果:
① R NATURAL INNER JOIN S
② R NATURAL RIGHT OUTER JOIN S ③ R RIGHT OUTER JOIN S USING(C) ④ R INNER JOIN S
⑤ R FULL OUTER JOIN S ON false
R A B C S B C D a1 b1 c1 b1 c1 d1 a2 b2 c2 b2 c2 d2 a3 b3 c3 b4 c4 d4
解:
① A B C D ② A B C D ③ A R.B C S.B
b1 a1 b1 c1 d1 a1 b1 c1 d1 a1 b1 c1
b2 a2 b2 c2 d2 a2 b2 c2 d2 a2 b2 c2
b4 null b4 c4 d4 null null c4
④ A R.B R.C S.B S.C D ⑤ A R.B R.C S.B S.C
D
d1 d2 d4 D
(2003/9/21) (GJ-DA) (共2页) 目录--22
a1 b1 c1 b1 c1 d1 a1 b1 c1 null null null a1 b1 c1 b2 c2 d2 a2 b2 c2 null null null a1 b1 c1 b4 c4 d4 a3 b3 c3 null null null
c1 a2 b2 c2 b1 c1 d1 null null null b1 d1 c2 a2 b2 c2 b2 c2 d2 null null null b2 d2 c4 a2 b2 c2 b4 c4 d4 null null null b4 d4 a3 b3 c3 b1 c1 d1 a3 b3 c3 b2 c2 d2 a3 b3 c3 b4 c4 d4
3.9 SQL2提供CASE表达式操作,这个操作类似于程序设计语言中的多分支选择结构,其句
法如下: CASE
WHEN 条件1 THEN 结果1 WHEN 条件2 THEN 结果2
??
WHEN 条件n THEN 结果n
ELSE 结果m
END
如果自上而下“条件i”首先被满足,那么这个操作返回值“结果i”(可以是某个表达式的值);如果没有一个条件被满足,那么返回值“结果m”。 在基本表SC(S#,C#,GRADE)中,GRADE值是百分制。如果欲转换成“成绩等第”,则规则如下:若GRADE<40则等第为F,若40≤GRADE<60则等第为C,若60≤GRADE<80则等第为B,若80≤GRADE则等第为A。试写出下列两个查询语句: ① 检索每个学生的学习成绩,成绩显示时以等第(SCORE)形式出现。 ② 检索每个等第的学生人次数。 解:① SELECT S#,C#,CASE
WHEN GRADE >= 80 THEN 'A' WHEN GRADE >= 60 THEN 'B' WHEN GRADE >= 40 THEN 'C' ELSE 'F' END AS SCORE
FROM SC;
② SELECT SCORE,COUNT(S#)
FROM (SELECT S#,C#,CASE
WHEN GRADE >= 80 THEN 'A' WHEN GRADE >= 60 THEN 'B' WHEN GRADE >= 40 THEN 'C'
(2003/9/21) (GJ-DA) (共2页) 目录--23
ELSE 'F'
END
FROM SC) AS RESULT(S#,C#,SCORE) GROUP BY SCORE;
3.10 用第3.9题给出的CASE操作在下列更新语句中完成SC表中的元组更新:
① 若课程号为C5则增加6分,若课程号为C8则增加10分,其他一律增加5分。 ② 若C4课程的成绩低于该门课平均成绩时,提高5%,否则提高4%。 解:① UPDATE SC
SET GRADE = GRADE + CASE
WHEN C# ='C5' THEN 6 WHEN C# ='C8' THEN 10 ELSE 5 END ;
② UPDATE SC
SET GRADE = GRADE * CASE
WHEN GRADE <(SELECT AVG(GRADE)
FROM SC
WHERE C# ='C4')
THEN 1.05 ELSE 1.04 END
WHERE C# ='C4';
3.11 设零件之间有组合联系,其关系模式如下:
PART(P#,PNAME,SUBP#,TOTAL)
其属性表示零件编号、零件名称、所需子零件编号及数量。设临时关系W(P#,SUBP#)的属性分别表示零件编号、这种零件的直接或间接子零件编号。 ① 试写出表示关系W的规则。 ② 写出计算W的递归查询语句。 解:① W(x, y)←PART(x, g, y, h)
W(x, y)←W(x, z)∧ W(z, y) ② WITH RECURSIVE W(P#, SUBP#) AS (SELECT P#, SUBP# FROM PART) UNION
(SELECT W1.P#, W2.SUBP# FROM W AS W1, W AS W2 WHERE W1.SUBP#=W2.P#) SELECT * FROM W;
3.12 试用SQL更新语句表达对3.2题教学数据库中关系S、SC、C的更新操作:
① 往关系C中插一个课程元组('C8','VC++','BAO')。
② 检索所授每门课程平均成绩均大于80分的教师姓名,并把检索到的值送往另一个已
(2003/9/21) (GJ-DA) (共2页) 目录--24
存在的表FACULTY(TNAME)。
③ 在SC中删除尚无成绩的选课元组。
④ 把选修LIU老师课程的女同学选课元组全部删去。 ⑤ 把MATHS课不及格的成绩全改为60分。
⑥ 把低于所有课程总平均成绩的女同学成绩提高5%。
⑦ 在表SC中修改C4课程的成绩,若成绩小于等于70分时提高5%,若成绩大于70 分时提高4%(用两种方法实现,一种方法是用两个UPDATE语句实现,另一种方法是用带CASE操作的一个UPDATE语句实现)。
⑧ 在表SC中,当某个成绩低于全部课程的平均成绩时,提高5%。 解:① INSER …… 此处隐藏:2847字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [综合文档]应答器设备技术规范(征求意见稿)A1
- [综合文档]教师 2012年高考政治试题按考点分类汇
- [综合文档]保险公司的总经理助理竞职演说
- [综合文档]卫生应急大练兵大比武活动考试--题库(
- [综合文档]徐州经济技术开发区总体规划环境影响报
- [综合文档]汉语拼音表(带声调)
- [综合文档]二年级 上 思维训练( 1~18)
- [综合文档]特色学校五年发展规划
- [综合文档]机床经常出现报警“X1轴定位监控”
- [综合文档]《电子技术基础》21.§5—2、3、4 习题
- [综合文档]浙江省深化普通高中课程改革
- [综合文档]CRISP原理 - 图文
- [综合文档]2017年电大社会调查研究与方法形考答案
- [综合文档]浅析建筑施工安全毕业论文
- [综合文档]《回忆我的母亲》名师教案
- [综合文档]装饰装修工程监理规划
- [综合文档]三下乡心得体会-文艺
- [综合文档]柱计算长度系数 - 图文
- [综合文档]全流程思考,提高燃电系统热电转换率--
- [综合文档]2018年嘉定区中考物理一模含答案
- 433M车库门滚动码遥控器
- 8、架空线路施工规范
- 大学四年声乐学习的体会
- 新北师大版五年级数学上册《轴对称再认
- 部编版五年级上册语文第六单元小结复习
- 小学六年级英语形容词用法
- 第2课 抗美援朝保家卫国 课件01(岳麓版
- 2015年天津大学运筹学基础考研真题,考
- 微机计算机控制技术课后于海生(第2版)
- 安全教育实践活动
- Delphi程序设计教程_第1章_Delphi概述
- 第八讲 工业革命与启蒙运动
- 《中华人民共和国药典》2005年版二部勘
- 科粤版九年级化学2.3构成物质的微粒(1)
- 西师大版数学三年级下册《长方形、正方
- ch6_冒泡排序演示
- 第4章 冲裁模具设计
- 浙江中小民营企业员工流失论文[终稿]
- 再议有线数字电视市场营运模式
- 昆明供水工程监理大纲




