数据库习题作业

合集下载

数据库练习题

数据库练习题

一、关系运算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、以下关于数据库实例的表述哪个是不正确的()A、数据库实例包括内存结构B、数据库实例包括进程结构C、数据库实例包括存储结构D、专享服务器模式下一个实例对应一个数据库2、以下表述不正确的是()A、在共享服务器环境中,多个客户机用户共享服务器进程。

B、在共享服务器环境中,PGA中具有独立的用户全局区。

C、每个服务器进程都有独立的 PGA。

D、在专用服务器环境中,连接到数据库实例的每个用户都有单独的服务器进程。

3、用户进程和 Oracle DB 实例之间的通信路径是()。

A、连接B、会话C、通信D、访问4、用于在运行时存放数据字典的内存区域是()A、共享池B、数据库缓冲区高速缓存C、重做日志缓冲区D、大池5、以下对于重做日志缓冲区错误的表述是()A、SGA 中的循环缓冲区B、存放对数据库所做更改的相关信息C、包含重做条目,重做条目中具有用于重做 DML 和 DDL 之类操作所做更改的信息D、重做日志缓冲区中产生的重做条目实时写入重做日志文件6、以下对数据缓冲区高速缓存错误的表述是()A、数据库缓冲区高速缓存是 SGA 的一部分。

B、用于存放从数据文件中读取的块映像或动态构造的块映像,以便符合读一致性模型要求。

C、并行连接到实例的所有用户共享对数据库缓冲区高速缓存的访问。

D、该区域存储数据最小的单位是 2KB。

7、在数据库备份和恢复是会使用到的内存区域是()A、共享池B、重做日志缓冲区C、大型池D、JAVA池8、包含服务器进程或后台进程的数据及控制信息的内存区域称为:()A、共享池B、PGAC、缓冲区高速缓存D、用户会话数据9、从数据文件读取到数据库缓冲区高速缓存中的是什么?()A、行B、更改C、块D、SQL10、Oracle数据库进程体系不包括()A、用户进程B、数据库进程C、守护程序/应用程序进程D、监控进程11、服务器进程是用来()A、处理连接到实例的用户进程的请求。

B、等待网络中连接数据库的请求。

数据库练习题

数据库练习题

数据库练习题2.数据库在磁盘上的基本组织形式是[B ] A.DB B.⽂件 C.⼆维表 D.系统⽬录3.在关系模型中,起导航数据作⽤的是[B ] A.指针 B.关键码 C.DD D.索引4.查询优化策略中,正确的策略是[D ] A.尽可能早地执⾏笛卡尔积操作B.尽可能早地执⾏并操作C.尽可能早地执⾏差操作D.尽可能早地执⾏选择操作5.SQL中,“DELETE FROM 表名”表⽰[A ] A.从基本表中删除所有元组B.从基本表中删除所有属性C.从数据库中撤消这个基本表D.从基本表中删除重复元组6.设关系模式R(A,B,C),F是R上成⽴的FD集,F={A→B,C→B},ρ={AB,AC}是R的⼀个分解,那么分解ρ[C ] A.保持函数依赖集F B.丢失了A→BC.丢失了C→B D.丢失了B→C8.在关系数据库设计中,⼦模式设计是在__________阶段进⾏。

[B ] A.物理设计 B.逻辑设计 C.概念设计 D.程序设计10.在DB技术,未提交的随后被撤消了的数据,称为[D ] A.报废的数据 B.过时的数据 C.撤消的数据 D.脏数据1. 关系数据库管理系统都是基于( A )理论。

A. Codd的数据关系模型B. 数据结构C. 计算机操纵系统D. 信息管理2. 元组关系演算表达式{t| R(t)∧S(t)}表达的是(D )A. R∪SB. R∩SC. R-SD. S-R5. 语句 delete from sc 表明( A )A. 删除sc中的全部记录B. 删除基本表scC. 删除基本表sc中的列数据D. 删除基本表sc中的部分⾏7. 关系笛卡尔积运算记号R×S,( D )A. R为关系名,S为属性名B. R和S均为属性名C. R为属性名,S为关系名D. R和S均为关系名9. 下列说法中不正确的是(C )。

A. 任何⼀个包含两个属性的关系模式⼀定满⾜3NFB. 任何⼀个包含两个属性的关系模式⼀定满⾜BCNFC. 任何⼀个包含三个属性的关系模式⼀定满⾜3NFD. 任何⼀个关系模式都⼀定有码10. 在下列基本表的定义中,数值5表⽰( C )CREATE TABLE student (Sno char(5) not null unique,Sname char(2));A. 表中有5条记录B. 表中有5列C. 表中字符串Sno 的长度D. 表格的⼤⼩11. 在视图上不能完成的操作是( C )A. 更新视图B. 查询C. 在视图上定义新的基本表D. 在视图上定义新视图12. 设有关系模式R(A,B,C,D),F是R上成⽴的函数依赖集,F={B→C,C→D},则属性C的闭包C+为( C )A.BCDB.BDC.CDD.BC1. DB、DBMS和DBS三者之间的关系是(B)。

数据库第五章作业

数据库第五章作业

第五、六章练习题一、选择题1、在关系数据库设计中,子模式设计是在__________阶段进行。

[ B]A.物理设计B.逻辑设计C.概念设计D.程序设计2、设有关系R(A,B,C)的值如下:A B C2 2 32 3 43 3 5下列叙述正确的是(B)A.函数依赖A→B在上述关系中成立B.函数依赖BC→A在上述关系中成立C.函数依赖B→A在上述关系中成立D.函数依赖A→BC在上述关系中成立3、数据库设计阶段分为(D )A. 物理设计阶段、逻辑设计阶段、编程和调试阶段B. 模型设计阶段、程序设计阶段和运行阶段C. 方案设计阶段、总体设计阶段、个别设计和编程阶段D. 概念设计阶段、逻辑设计阶段、物理设计阶段、实施和调试阶段4、下列说法中不正确的是(C)。

A. 任何一个包含两个属性的关系模式一定满足3NFB. 任何一个包含两个属性的关系模式一定满足BCNFC. 任何一个包含三个属性的关系模式一定满足3NFD. 任何一个关系模式都一定有码5、设有关系模式R(A,B,C,D),F是R上成立的函数依赖集,F={B→C,C→D},则属性C的闭包C+为( C )A.BCDB.BDC.CDD.BC6、在数据库设计中,将ER图转换成关系数据模型的过程属于( B )A.需求分析阶段B.逻辑设计阶段C.概念设计阶段D.物理设计阶段7、下述哪一条不是由于关系模式设计不当而引起的?(B)A) 数据冗余B) 丢失修改C) 插入异常D) 更新异常8、下面关于函数依赖的叙述中,不正确的是(B)A) 若X→Y,X→Z,则X→YZB) 若XY→Z,则X→Z,Y→ZC) 若X→Y,Y→Z,则X→ZD) 若X→Y,Y′ Y,则X→Y′9、设U是所有属性的集合,X、Y、Z都是U的子集,且Z=U-X-Y。

下面关于多值依赖的叙述中,不正确的是(C)A) 若X→→Y,则X→→ZB) 若X→Y,则X→→YC) 若X→→Y,且Y′⊂Y,则X→→Y′D) 若Z=Φ,则X→→Y第(10)至(12)题基于以下的叙述:有关系模式A(C,T,H,R,S),基中各属性的含义是:C:课程T:教员H:上课时间R:教室S:学生根据语义有如下函数依赖集:F={C→T,(H,R)→C,(H,T)→R,(H,S)→R}10、关系模式A的码是(D)A) C B) (H,R)C)(H,T)D)(H,S)11、关系模式A的规范化程度最高达到(B)A) 1NF B) 2NF C) 3NF D) BCNF12、现将关系模式A分解为两个关系模式A1(C,T),A2(H,R,S),则其中A1的规范化程度达到(D)A) 1NF B) 2NF C) 3NF D) BCNF13、下述哪一条不属于概念模型应具备的性质?(D)A) 有丰富的语义表达能力B) 易于交流和理解C) 易于变动D) 在计算机中实现的效率高14、在下面列出的条目中,哪个(些)是当前应用开发工具的发展趋势?(D)Ⅰ.采用三层或多层Client/Server结构Ⅱ.支持Web应用Ⅲ.支持开放的、构件式的分布式计算环境A) Ⅰ和ⅡB) 只有ⅡC) 只有ⅢD) 都是15、下面所列的工具中,不能用于数据库应用系统界面开发的工具是(C)A) Visual Basic B) DelphiC) PowerDesigner D) PowerBuilder16、设关系模式R{A,B,C,D,E},其上函数依赖集F={AB→C,DC→E,D→B},则可导出的函数依赖是(A)。

数据库全部习题

数据库全部习题

第一章绪论练习一、单项选择题1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。

在这几个阶段中,数据独立性最高的是( A )阶段。

A 数据库系统B 文件系统C 人工管理D 数据项管理2 数据库系统与文件系统的主要区别是( D )。

A 数据库系统复杂,而文件系统简单B 文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决C 文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件D 文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量3 数据库的概念模型独立于( A )。

A 具体的机器和DBMSB E-R图C 信息世界 D现实世界4 数据库是在计算机系统中按照一定的数据模型组织、存储和应用的B①,支持数据库各种操作的软件系统叫做B②,由计算机、操作系统、DBMS、数据库、应用程序及用户等组成的一个整体叫做③B。

① A 文件的集合 B 数据的集合C命令的集合 D 程序的集合② A 命令系统 B 数据库管理系统C 数据库系统D 操作系统③ A 命令系统 B 数据库系统C 软件系统D 数据库管理系统5 数据库具有B①、最小的A②和较高的C③。

① A 程序结构化 B 数据结构化C 程序标准化D 数据模块化② A 冗余度 B 存储量 C 完整性 D 有效性③ A 程序与数据可靠性 B 程序与数据完整性C 程序与数据独立性D 程序与数据一致性6 在数据库中存储的是( C )。

A 数据B 数据模型C 数据及数据之间的联系D 信息7 数据库中,数据的物理独立性是指( C )。

A数据库与数据库管理系统的相互独立性B 用户程序与DBMS的相互独立性C 用户的应用程序与存储在磁盘上数据库中的数据是相互独立的D 应用程序与数据库中的逻辑结构相互独立8 数据库的特点之一是数据的共享,严格的讲。

这里的数据共享是指( D )。

A 同一个应用中的多个程序共享一个数据集合B 多个用户、同一种语言共享数据C 多个用户共享一个数据文件D 多种应用、多种语言、多个用户相互覆盖地使用数据集合9 数据库技术中采用分级方法将数据库的结构划分为多个层次,是为了提高数据库的①C和②A。

数据库考试习题及答案

数据库考试习题及答案

第一章习题一、判断题1.安装Microsoft SQL Server 2005 企业版对操作系统的最低要求可以是Microsoft Windows XP Professional SP2。

( 错)2.每一个服务器必须属于一个服务器组。

一个服务器组可以包含0个、一个或多个服务器。

(对)二、填空题3. MS SQL Server提供多个图形化工具,其中用来启动、停止和暂停SQL Server 服务的图形化工具称为SQLServer 配置管理器。

三、选择题4. 下列系统数据库中,(D)数据库不允许进行备份操作。

A. masterB. msdbC. modelD. Tempdb5. 下列关于SQL Server 2005实例的说法中,正确的是(C)。

A.不同版本的默认实例数可能不一样多B.不同版本的命名实例数一定一样多C.不同版本的默认实例只有一个,命名实例数不一样多D.不同版本的命名实例只有一个,默认实例数不一样多6. 下列(C)数据库是SQL Server 2005在创建数据库时可以使用的模板。

A. masterB. msdbC. modelD.mssqlsystemresoure7. 默认情况下,SQL Server 2005的系统数据库有(B)。

A. 1个B.5个C. 4个D.6个8. 在一台计算机上能安装(A)个默认实例。

A. 1B. 509. 访问默认实例使用(B)作为实例名。

A. 计算机名B. MSSQLSERVER10. 下列叙述中正确的是(A)。

A. SQL SERVER实例是提供服务的, 所以一个SQL Server实例称为一个数据库服务器B. SQL SERVER实例也叫做数据库引擎C. 若计算机上安装多个SQL SERVER实例,则它们可以相互管理11. SQL SERVER 2005实例主要提供哪些服务?(BCD)//全文搜索、报表服务、通知服务A. 查询服务B. 数据库服务C. 集成服务D. 分析服务12. 一台计算机的计算机名为computer,若在该计算机上打开配置管理器看到如图1所示内容,则说明本机上已安装3个实例,其实例名分别是(BCD)A. computerB. MSSQLSERVERC. computer\SQLEXPRESSD. computer\SERVER13. 连接数据库服务器时需要提供哪些信息?(A或者B)A. 要连接的服务器名B. 身份验证信息C. 连接协议信息14. 能否将他人计算机上运行的实例注册到你的SSMS中?(A)A. 不能B. 能四、简答题15. 什么是SQL Server 2005实例,其主要功能有哪些?答:SQL Server 2005 的实例实际上就是虚拟的SQL Server 服务器。

(完整版)数据库练习题及答案解析

(完整版)数据库练习题及答案解析

第一章习题一、单项选择题1 •数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS )之间的关系是(A )。

A. DBS 包括DB 和DBMSB. DBMS 包括DB 和DBSC. DB包括DBS和DBMSD. DBS就是DB,也就是DBMS2. 下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是(D )。

I •人工管理阶段II.文件系统阶段III •数据库阶段A. I 和IIB. 只有IIC. II 和IIID. 只有I3. 下列四项中,不属于数据库系统特点的是(C )。

A. 数据共享B. 数据完整性C. 数据冗余度高D. 数据独立性高4. 数据库系统的数据独立性体现在(B )。

A .不会因为数据的变化而影响到应用程序B. 不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序C. 不会因为存储策略的变化而影响存储结构D. 不会因为某些存储结构的变化而影响其他的存储结构5. 要保证数据库的数据独立性,需要修改的是(C )。

A. 模式与外模式B. 模式与内模式C. 三层之间的两种映射D. 三层模式6. 要保证数据库的逻辑数据独立性,需要修改的是(A )。

A. 模式与外模式的映射B. 模式与内模式之间的映射C. 模式D. 三层模式7. 用户或应用程序看到的那部分局部逻辑结构和特征的描述是(C ),它是模式的逻辑子集。

A.模式B.物理模式C. 子模式D. 内模式8. 下述(B )不是DBA 数据库管理员的职责。

A.完整性约束说明B.定义数据库模式C.数据库安全D.数据库管理系统设计9. 常见的数据模型有三种,它们是(B )A 网状、关系和语义B 层次、关系和网状C 环状、层次和关系D 字段名、字段类型和记录10. 在E-R 图中,用来表示属性的图形是(B )A 矩形B 椭圆形C 菱形D 平行四边形二、填空题1. 描述数据库全体数据的全局逻辑结构和特性的是___________ 模式 ______ 。

数据库课后习题作业答案

数据库课后习题作业答案

数据库课后习题作业答案《数据库系统概论》课程习题及参考答案第⼀章绪论(教材37页)1.试述数据、数据库、数据库系统、数据库管理系统的概念。

答:数据:描述事物的符号记录称为数据。

数据的种类有⽂字、图形、图像、声⾳、正⽂等等。

数据与其语义是不可分的。

数据库:数据库是长期储存在计算机内、有组织的、可共享的数据集合。

数据库中的数据按⼀定的数据模型组织、描述和储存,具有较⼩的冗余度、较⾼的数据独⽴性和易扩展性,并可为各种⽤户共享。

数据库系统:数据库系统(DBS)是指在计算机系统中引⼊数据库后的系统构成。

数据库系统由数据库、数据库管理系统(及其开发⼯具)、应⽤系统、数据库管理员构成。

数据库管理系统:数据库管理系统(DBMS)是位于⽤户与操作系统之间的⼀层数据管理软件。

⽤于科学地组织和存储数据、⾼效地获取和维护数据。

DBMS 主要功能包括数据定义功能、数据操纵功能、数据库的运⾏管理功能、数据库的建⽴和维护功能。

2.使⽤数据库系统有什么好处?答:使⽤数据库系统的好处是由数据库管理系统的特点或优点决定的。

使⽤数据库系统的好处很多,例如可以⼤⼤提⾼应⽤开发的效率,⽅便⽤户的使⽤,减轻数据库系统管理⼈员维护的负担等。

为什么有这些好处,可以结合第 5题来回答。

使⽤数据库系统可以⼤⼤提⾼应⽤开发的效率。

因为在数据库系统中应⽤程序不必考虑数据的定义、存储和数据存取的具体路径,这些⼯作都由 DBMS来完成。

此外,当应⽤逻辑改变,数据的逻辑结构需要改变时,由于数据库系统提供了数据与程序之间的独⽴性。

数据逻辑结构的改变是 DBA的责任,开发⼈员不必修改应⽤程序,或者只需要修改很少的应⽤程序。

从⽽既简化了应⽤程序的编制,⼜⼤⼤减少了应⽤程序的维护和修改。

使⽤数据库系统可以减轻数据库系统管理⼈员维护系统的负担。

因为 DBMS 在数据库建⽴、运⽤和维护时对数据库进⾏统⼀的管理和控制,包括数据的完整性、安全性,多⽤户并发控制,故障恢复等等都由DBMS执⾏。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据库习题作业重点(第2-3-4章)7 2 3443计算R ∪S ,R-S ,R ∩S ,R ×S ,π3,2(S ),σB<’5’(R),R 2<2 解: R ∪S A B C R -S A B C R ∩S A B C 3 6 7 3 6 77232 5 7 2 5 7 7 2 34434 4 3345R ×S R.A R.B R.C S.A S.B S.C π3,2(S ) C B 3 6 7 3 4 5 5 4 3 6 7 7 2 3322 5 7345 2 5 7 7 2 3 7 2 3 3 4 5 7 2 3 7 2 3 4 4 3 3 4 5443723σB<’5’(R) A B C R⋈S R.A R.B R.C S.A S.B S.C7 2 3 7 2 3 3 4 54 4 3R⋈S A B C7 2 32.7 设有关系R和S:R A B S B Ca b b cc b e ad e b d计算R ⋈ S,R ⋈ S,σA=C(R×S),S ⋉ R。

2<2B<Ce ab2.8 假设关系U和V分别有m个元组和n个元组,给出下列表达式中可能的最小和最大的元组数量:⑴U∩V ⑵U∪V⑶U⋈V ⑷σF(U)×V (F为某个条件)⑸πL(U)-V (其中L为某属性集)解:操作最小元组数最大元组数⑴U∩V0min(m,n)⑵U∪V max(m,n)m+n⑶U⋈V0m×n⑷σF(U)×V0m×n⑸πL(U)-V0m2.17 设有三个关系:T(T#,TNMAE,TITLE)C(C#,CNAME,T#)S(S#,SNAME,AGE,SEX)SC(S#,C#,SCORE)试用关系代数表达式表示下列查询语句:①检索年龄小于17岁的女学生的学号和姓名。

②检索男学生所学课程的课程号和课程名。

③检索男学生所学课程的任课教师的工号和姓名。

④检索至少选修两门课的学生学号。

⑤检索至少有学号为S2和S4学生选修的课程的课程号。

⑥检索WANG同学不学的课程的课程号。

⑦检索全部学生都选修的课程的课程号与课程名。

⑧检索选修课程包含LIU老师所授全部课程的学生学号。

解:⑴πS#,SNAME(σAGE<’17’∧SEX=’F’(S))⑵Πc#,CNAME(σSEX='M'(S⋈SC⋈C))⑶ΠT#,TNAME(σSEX='M'(S⋈SC⋈C⋈T))⑷π1(σ1=4 ∧2≠5(SC×SC))⑸π2(σ1=’S2’∧4=’S4’∧2=5(SC×SC))⑹πC#(C)-πC#(σSNAME='WANG'(S⋈SC))⑺πC#,CNAME(C⋈(πS#,C#(SC)÷πS#(S)))⑻πS#,C#(SC)÷πC#(σTNAME='LIU'(C⋈T))2.21 在教学数据库的关系S、SC、C、T中,用户有一查询语句:检索女同学选修课程的课程名和任课教师名。

①试写出该查询的关系代数表达式。

②画出查询表达式的语法树。

③使用启发式优化算法,对语法树进行优化,并画出优化后的语法树。

解:【3.2】设教学数据库中有4个关系:教师关系T(T#,TNAME,TITLE)课程关系C(C#,CNAME,T#)学生关系S(S#,SNAME,AGE,SEX)选课关系SC(S#,C#,SCORE)试用SQL查询语句表示下列查询。

解:①检索年龄小于17岁的女学生的学号和姓名。

SELECT S#.SNAMEFROM SWHERE AGE<17 AND SEX=’F’②检索男学生所学课程的课程号和课程名。

SELECT C.C#,CNAME (连接查询方式)FROM S,SC,CWHERE S.S#=SC.S# AND SC.C#=C.C# AND SEX=’M’;③检索男学生所学课程的任课老师的工号和姓名。

SELECT T.T#, TNAMEFROM S,SC,C,TWHERE S.S#=SC.S# AND SC.C#=C.C# AND C.T#=T.T# AND SEX=’M’;④检索至少选修两门课程的学生学号。

SELECT DISTINCT X.S#FROM SC AS X, SC AS YWHERE X.S#=Y.S# AND X.C#!=Y.C#;⑤检索至少有学号为S2和S4的学生选修的课程的课程号。

SELECT DISTINCT X.C#FROM SC AS X, SC AS YWHERE X.S#=’S2’AND Y.S#=’S4’ AND X.C#=Y.C#;⑥检索WANG同学不学的课程的课程号。

SELECT C#FROM CWHERE NOT EXISTS(SELECT *FROM S, SCWHERE S.S#=SC.S# AND SC.C#=C.C# AND SNAME=’WANG’);⑦检索全部学生都选修的课程的课程号与课程名。

SELECT C#,CNAMEFROM CWHERE NOT EXISTS(SELECT *FROM SWHERE NOT EXISTS(SELECT *FROM SCWHERE S#=S.S# AND C#=C.C#));⑧检索选修课程包含LIU老师所授全部课程的学生学号。

法一:SELECT DISTINCT S#FROM SC AS XWHERE NOT EXISTS(SELECT *FROM C,TWHERE C.T#=T.T# AND TNAME=’LIU’AND NOT EXISTS(SELECT{FROM SC AS YWHERE Y.S#=X.S# AND Y.C#=C.C#));法二:SELECT DISTINCT S#FROM SC XWHERE NOT EXISTS((SELECT C# FROM C,TWHERE C.T#=T.T# AND TNAME='LIU’)EXCEPT(SELECT C# FROM SC Y WHERE Y.S#=X.S#));【3.7】试用SQL查询语句表达下列对第3.2题中4个基本表T、C、S、SC的查询。

①统计有学生选修的课程门数。

SELECT COUNT(DISTINCT C#) FROM SC;②求选修C4课程的女学生的平均年龄。

SELECT AVG(AGE)FROM S,SCWHERE S.S#=SC.S# AND C#=’C4’AND SEX=’F’:③求LIU老师所授的每门课程的平均成绩。

SELECT C.C#.AVG(SCORE)FROM SC,C,TWHERE SC.C#=C.C# AND C.T#=T.T# AND TNAME=’LIU’GROUP BY C.C#;④统计选修每门课程的学生人数(超过l0人的课程才统计)。

要求显示课程号和人数,查询结果按人数降序排列,若人数相同,则按课程号升序排列。

SELECT C#.COUNT(S#)FROM SCGROUP BY C#HAVING COUNT(*)>10ORDER BY 2 DESC,1;⑤检索学号比WANG同学大,而年龄比他小的学生姓名。

SELECT SNAMEFROM SWHERE S#>ALL(SELECT S# FROM SWHERE SNAME=’WANG’)AND AGE<ALL( SELECT AGEFROM SWHERE SNAME=’WANG);⑥在表SC中检索成绩为空值的学生的学号和课程号。

SELECT S#, C#FROM SCWHERE SCORE IS NULL;⑦检索姓名以L开头的所有学生的姓名和年龄。

SELECT SNAME, AGEFROM SWHERE SNAME LIKE ’L%’;⑧求年龄大于女同学平均年龄的男学生的姓名和年龄。

SELECT SNAME, AGEFROM SWHERE SEX=’M’AND AGE>(SELECT AVG(AGE)FROM SWHERE SEX=’F’);⑨求年龄大于所有女同学年龄的男学生的姓名和年龄。

SELECT SNAME, AGEFROM SWHERE SEX=‘M’AND AGE>ALL(SELECT AGEFROM SWHERE SEX=’F’);【3.12】解:①INSERT INTO CVALUES(‘C8’,’VC++’,’T6’);②法一:INSERT INTO FACULTY(TNAME)SELECT DISTINCT TNAMEFROM (SELECT TNAME,C.C#,AVG(SCORE)FROM T, C, SCWHERE T.T#=C.T# AND C.C#=SC.C#GROUP BY TNAME,C.C#)AS RESULT(TNAME,C#,AVG—SCORE) AS X WHERE 80<=ALL(SELECT AVG—SCOREFROM RESULT AS YWHERE Y.TNAME=X.TNAME);法二INSERT INTO FACULTY(TNAME)SELECT DISTINCT TNAMEFROM T, C, SCWHERE C.C#=SC.C# AND T.T#=C.T#AND T# NOT IN (SELECT T# FROM CWHERE C# IN(SELECT C# FROM SCGROUP BY C# HAVING AVG(SCORE)<=80))③DELETE FROM SC WHERE SCORE IS NULL;④DELETE FROM SCW HERE S# IN(SELECT S# FROM S WHERE SEX=’F’)AND C# IN(SELECT C# FROM C, T WHERE C.T#=T.T# AND TNAME=’LIU’);⑤UPDATE SCSET SCORE=60WHERE SCORE<60AND C# IN(SELECT C#FROM C WHERE CNAME=’MATHS’);⑥UPDATE SCSET SCORE=SCORE * 1.05WHERE S # IN(SELECT S# FROM S WHERE SEX='F’)AND SCORE<(SELECT AVG(SCORE) FROM SC);⑦用两个UPDATE语句实现:UPDATE SCSET SCORE=SCORE * 1.04WHERE C#=’C4’AND SCORE>70;UPDATE SCSET SCORE=SCORE * 1.05WHERE C#=’C4’AND SCORE<=70;这两个UPDATE语句的顺序不能颠倒。

相关文档
最新文档