sql数据库练习题

合集下载

(完整版)sql语句练习题及答案

(完整版)sql语句练习题及答案

(完整版)sql语句练习题及答案⼀在数据库 school 中建⽴student , sc, course 表。

学⽣表、课程表、选课表属于数据库School ,其各⾃的数据结构如下:学⽣Student (Sno,Sname,Ssex,Sage,Sdept)课程表course(Cno,Cname,Cpno,Ccredit)学⽣选课SC(Sno,Cno,Grade)⼆设定主码1 Student表的主码:sno2 Course表的主码:cno3 Sc表的主码:sno,cno1写出使⽤ Create Table 语句创建表 student , sc, course 的SQL语句23 删除student表中的元组4在数据库school中删除关系student5在student表添加属性sbirthdate 类型datetimeDelete1 删除所有JSJ 系的男⽣delete from Student where Sdept=’JSJ’ and Ssex=’男’;2 删除“数据库原理”的课的选课纪录delete from SC where Cno in (select Cno fromCourse where Cname=’数据库原理’);Update1 修改0001 学⽣的系科为: JSJ2 把陈⼩明的年龄加1岁,性别改为⼥。

2 修改李⽂庆的1001课程的成绩为93 分3 把“数据库原理”课的成绩减去1分Select 查询语句⼀单表1查询年龄在19⾄21岁之间的⼥⽣的学号,姓名,年龄,按年龄从⼤到⼩排列。

2查询姓名中第2个字为“明”字的学⽣学号、性别。

3查询 1001课程没有成绩的学⽣学号、课程号4查询JSJ 、SX、WL 系的年龄⼤于25岁的学⽣学号,姓名,结果按系排列5按10分制查询学⽣的sno,cno,10分制成绩(1-10分为1 ,11-20分为2 ,30-39分为3,。

90-100为10)6查询 student 表中的学⽣共分布在那⼏个系中。

数据库SQL语句练习题含答案

数据库SQL语句练习题含答案

SQL语句练习练习5. 1. 2: 基于不断滚动的电影数据库的实例:Movie( 电影名title,拍摄年代year ,长度length, inColor ,制片厂名studioName, 制片人证书号producerC# )StarsIn(电影名movieTitle,拍摄年份movieYear ,影星名starName) MovieStar (姓名name,地址address,性别gender ,生日birthdate) MovieExec( 姓名name,地址address ,证书号cert # ,净资产netWorth ) Studio(姓名name, 地址address,总裁证书号presC# )请写出下列SQL 查询语句:* ( a) 找出米高梅制片公司(MGM studios)的地址。

SELECT address AS Studio_AddressFROM Studio WHERE name = 'MGM';( b) 找出桑德拉·布洛克( Sandra Bullock ) 的出生日期( birthdate) 。

SELECT birthdate AS Star_BirthdateFROM MovieStar WHERE name = 'Sandra Bullock';* ( c) 找出在1980 年拍摄过电影的所有影星, 或者拍摄过电影名中含有“Love”的电影的所有影星。

SELECT starName FROM StarsInWHERE movieYear = 1980 OR movieTitle LIKE '%Love%';( d) 找出净资产至少1 000 万美元的所有行政长官。

SELECT name AS Exec_NameFROM MovieExec WHERE netWorth >= 10000000;( e) 找出所有的男影星或者是住址中含有Malibu 的影星。

数据库sql课后练习题及答案解析

数据库sql课后练习题及答案解析

先创建下面三个表:(book表)(borrow表)(reader表)1) 找出姓李的读者姓名(NAME)和所在单位(COMPANY)。

2) 列出图书库中所有藏书的书名(BOOK_NAME)及出版单位(OUTPUT)。

3) 查找“高等教育出版社”的所有图书名称(BOOK_NAME)及单价(PRICE),结果按单价降序排序。

4) 查找价格介于10元和20元之间的图书种类(SORT),结果按出版单位(OU TPUT)和单价(PRICE)升序排序。

5) 查找书名以”计算机”开头的所有图书和作者(WRITER)。

6) 检索同时借阅了总编号(BOOK_ID)为和两本书的借书证号(READER_ID)。

##7)* 查找所有借了书的读者的姓名(NAME)及所在单位(COMPANY)。

8)* 找出李某所借所有图书的书名及借书日期(BORROW_DATE)。

9)* 无重复地查询2006年10月以后借书的读者借书证号(READER_ID)、姓名和单位。

##10)* 找出借阅了<FoxPro大全>一书的借书证号。

11) 找出与”赵正义”在同一天借书的读者姓名、所在单位及借书日期。

12) 查询2006年7月以后没有借书的读者借书证号、姓名及单位。

#13) 求”科学出版社”图书的最高单价、最低单价、平均单价。

##14)* 求”信息系”当前借阅图书的读者人次数。

#15) 求出各个出版社图书的最高价格、最低价格和总册数。

#16) 分别找出各单位当前借阅图书的读者人数及所在单位。

17)* 找出当前至少借阅了2本图书(大于等于2本)的读者姓名及其所在单位。

18) 分别找出借书人次数多于1人次的单位及人次数。

19) 找出藏书中各个出版单位的名称、每个出版社的书籍的总册数(每种可能有多册)、书的价值总额。

20) 查询经济系是否还清所有图书。

如果已经还清,显示该系所有读者的姓名、所在单位和职称。

附录:建表语句创建图书管理库的图书、读者和借阅三个基本表的表结构:创建BOOK:(图书表)CREATE TABLE BOOK (BOOK_ID int,SORT VARCHAR(10),BOOK_NAME VARCHAR(50),WRITER VARCHAR(10),OUTPUT VARCHAR(50),PRICE int);创建READER:(读者表)CREATE TABLE READER (READER_ID int,COMPANY VARCHAR(10),NAME VARCHAR(10),SEX VARCHAR(2),GRADE VARCHAR(10),ADDR VARCHAR(50));创建BORROW:(借阅表)CREATE TABLE BORROW (READER_ID int,BOOK_ID int,BORROW_DATE datetime)插入数据:BOOK表:insert into BOOK values(,'TP3/12','数据库导论','王强','科学出版社',17.90); insert into BOOK values(,'TP3/12','数据库导论','王强','科学出版社',17.90); insert into BOOK values(,'TP3/12','数据库导论','王强','科学出版社',17.90); insert into BOOK values(,'TP5/10','计算机基础','李伟','高等教育出版社',18.00);insert into BOOK values(,'TP3/12','FoxBASE','张三','电子工业出版社',23.60);insert into BOOK values(,'TS7/21','高等数学','刘明','高等教育出版社',20.00);insert into BOOK values(,'TR9/12','线性代数','孙业','北京大学出版社',20.80);insert into BOOK values(,'TR7/90','大学英语','胡玲','清华大学出版社',12.50);insert into BOOK values(,'TP4/13','数据库基础','马凌云','人民邮电出版社',22.50);insert into BOOK values(,'TP4/13','数据库基础','马凌云','人民邮电出版社',22.50);insert into BOOK values(,'TP4/13','数据库基础','马凌云','人民邮电出版社',22.50);insert into BOOK values(,'TP4/14','FoxPro大全','周虹','科学出版社',32.70);insert into BOOK values(,'TP4/14','FoxPro大全','周虹','科学出版社',32.70);insert into BOOK values(,'TP4/15','计算机网络','黄力钧','高等教育出版社',21.80);insert into BOOK values(,'TP4/15','计算机网络','黄力钧','高等教育出版社',2 1.80);READER表:insert into reader values(111,'信息系','王维利','女','教授','1号楼424'); insert into reader values(112,'财会系','李立','男','副教授','2号楼316 ');insert into reader values(113,'经济系','张三','男','讲师','3号楼105'); insert into reader values(114,'信息系','周华发','男','讲师','1号楼316'); insert into reader values(115,'信息系','赵正义','男','工程师','1号楼224 ');insert into reader values(116,'信息系','李明','男','副教授','1号楼318 ');insert into reader values(117,'计算机系','李小峰','男','助教','1号楼214 ');insert into reader values(118,'计算机系','许鹏飞','男','助工','1号楼216 ');insert into reader values(119,'计算机系','刘大龙','男','教授','1号楼318 ');insert into reader values(120,'国际贸易','李雪','男','副教授','4号楼506');insert into reader values(121,'国际贸易','李爽','女','讲师','4号楼510 ');insert into reader values(122,'国际贸易','王纯','女','讲师','4号楼512 ');insert into reader values(123,'财会系','沈小霞','女','助教','2号楼202'); insert into reader values(124,'财会系','朱海','男','讲师','2号楼210'); insert into reader values(125,'财会系','马英明','男','副教授','2号楼212 ');BORROW表:insert into borrow values(112,,'3-19-2006');insert into borrow values(125,,'2-12-2006');insert into borrow values(111,,'8-21-2006');insert into borrow values(112,,'3-14-2006');insert into borrow values(114,,'10-21-2006');insert into borrow values(120,,'11-2-2006');insert into borrow values(120,,'10-18-2006');insert into borrow values(119,,'11-12-2006');insert into borrow values(112,,'10-23-2006');insert into borrow values(115,,'8-21-2006');insert into borrow values(118,,'9-10-2006');现有关系数据库如下:数据库名:图书借阅管理系统读者表(读者编号 char(6),姓名,性别,年龄,单位,身份证号,职称)图书表(图书编号char(6),图书名称,出版社,作者)借阅表(读者编号,图书编号,借阅时间)用SQL语言实现下列功能的sql语句代码。

SQL练习题,非题库

SQL练习题,非题库

SQL练习题,非题库选择题1. 取出关系中的某些列,并消去重复的元组的关系运算称为(投影运算)。

2. 在学生数据库中,用SQL语句列出所有女生的姓名,应该对学生关系进行(选择和投影)操作。

3. 公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是(多对一)。

4. 在一个关系中,不能有相同的(属性)。

5. (数据库管理系统)是位于用户与操作系统之间的一层数据管理软件。

6. 数据库系统不仅包括数据库本身,还要包括相应的硬件,软件和(各类相关人员)。

7. SQL语言属于(据有关系代数和关系演算双重特点的语言)。

8. SQL Server采用的体系结构是(单进程、多线程)。

9. SQL语言是(结构化查询语言)。

10.SQL语言最主要功能是(数据查询)。

11.SQL Server2005在安装之前,应注意的事项是(SQL Server2005在安装之前,必须在操作系统级启用TCP/IP)。

12.下列关于身份验证模式叙述正确的是(只有Windows的当前用户才可选择Windows身份验证模式)。

13.在连接SQL Server时需要提供用户名和密码的身份验证模式是(SQL Server身份验证)。

14.在连接到数据库引擎时,有两种连接认证方式,其中在(SQL Server身份验证)方式下,需要客户端提供登录时需要的用户名和密码。

15.下列(pubs)不是SQL Server2005的系统数据库。

16.关于数据库事务日志文件叙述错误的是(如果未指定事务日志文件的增长量,则文件大小保持不变)。

17.每个数据库有且只能有一个(主数据文件)。

18.下面(队列、约束)不是SQL Server2005数据库对象。

19.如果数据库中的数据量非常大,除了将数据存储在主数据文件中,还可以将一部分数据存储在(次数据文件)。

20.用以交互地设计和测试T-SQL语句的是(查询命令窗口)。

数据库的sql语句练习题

数据库的sql语句练习题

数据库的sql语句练习题1. 练习题一:查询语句基础在学生表(students)中,包含以下字段:学号(id)、姓名(name)、年龄(age)、性别(gender)、班级(class)、成绩(score)。

请编写SQL语句实现以下需求:a) 查询学生表中所有学生的信息。

b) 查询学生表中的男性学生信息。

c) 查询学生表中年龄为18岁的学生信息。

d) 查询学生表中成绩大于等于90分的学生信息。

e) 查询学生表中姓“张”的学生信息。

2. 练习题二:修改语句练习在学生表(students)中,某个学生的学号为1001,需要将该学生的年龄修改为20岁,请编写相应的SQL语句实现此操作。

3. 练习题三:插入语句练习在学生表(students)中添加一条新纪录,学号为1002,姓名为李明,年龄为19岁,性别为男,班级为三年级,成绩为87分,请编写相应的SQL语句实现此操作。

4. 练习题四:删除语句练习在学生表(students)中,某个学生的学号为1003,需要将该学生的信息从表中删除,请编写相应的SQL语句实现此操作。

5. 练习题五:使用多表查询存在两张表,学生表(students)和课程表(courses)。

学生表包含字段:学号(id)、姓名(name)、班级(class);课程表包含字段:课程编号(course_id)、课程名称(course_name)。

已知约德尔学院中,学号为1001的学生参加了编号为1的课程,请编写SQL语句查询学号为1001的学生所选的课程及课程名称。

6. 练习题六:排序查询练习在学生表(students)中,查询所有学生的信息,并按照成绩从高到低进行排序。

以上是数据库的SQL语句练习题,请按照上述要求编写相应的SQL语句进行解答。

祝你练习愉快,取得好成绩!。

SQL同步练习题

SQL同步练习题

一、选择题1、建立表结构的SQL命令是______。

A:CREAT CURSORB:CREAT TABLEC:CREAT INDEXD:CREAT VIEW2、不属于数据定义功能的SQL语句是______。

A:CREAT TABLEB:CREAT CURSORC:UPDATED:ALTER TABLE3、UPDATE-SQL语句的功能是______。

A:属于数据定义功能B:属于数据查询功能C:可以修改表中某些列的属性D:可以修改表中某些列的内容4、SELECT-SQL语句是______。

A:选择工作区语句B:数据查询语句C:选择标准语句D:数据修改语句5、关于INSERT-SQL语句描述正确的是______。

A:在表中任何位置插入若干条记录B:在表中任何位置插入一条记录C:在表尾插入一条记录D:在表头插入一条记录6、SQL中可使用的通配符有______。

A:*(星号)B:%(百分号)C:_(下划线)D:B和C7、SQL语言是具有______的功能。

A:关系规范化、数据操纵、数据控制B:数据定义、数据操纵、数据控制C:数据定义、关系规范化、数据控制D:数据定义、关系规范化、数据操纵8、SQL语言是______语言。

A:层次数据库B:网络数据库C:关系数据库D:非数据库9、在SQL中,基本表的撤消(从数据库中删除表)可以用______。

A:DROP SCHEMA命令B:DROP TABLE命令C:DROP VIEW命令D:DROP INDEX命令10、SQL语言是______。

A:高级语言B:结构化查询语言C:第三代语言D:宿主语言11、在标准SQL中,建立视图的命令是______。

A:CREATE SCHEMA命令B:CREATE TABLE命令C:CREATE VIEW命令D:CREATE INDEX命令12、用SQL语句建立表时将属性定义为主关键字,应使用短语______。

A:CHECKB:PRIMARY KEYC:FREED:UNIQUE13、SQL实现分组查询的短语是______。

数据库SQL练习题

数据库SQL练习题

数据库应用(SQL Server)练习题一题:单选1. 在Transact-SQL中,下列命令能让程序完全跳出循环的是( C )。

(A) CASE (B) WAIT (C) BREAK (D) CONTINUE2. 在SQL SERVER 2008中,不能恢复的操作是( D )。

(A) DELETE (B) UPDATE (C) INSERT (D) TRUNCATE TABLE3. 在SQL SERVER 2008中,默认的事务隔离级别是(A )。

(A) READ COMMITTED (B) READ UNCOMMITTED (C) REPEATABLE READ (D) SERIALIZABLE4. 当对关系R和S使用自然联接时,一般要求R和S至少含有一个共同的(D )。

(A) 元组(B) 关键字(C) 记录(D) 属性5. 若关系模式R(A,B,C,D,E)上的函数依赖集F={AB->C,A->D,A->E},为了满足BCNF,可以将R分解为( B )。

(A) R1(A,B,C,D) R2(A,E) (B) R1(A,B,C) R2(A,D,E)(C) R1(A,B,C) R2(D,E) (D) R1(A,B) R2(A,C,D,E)6. SQL语言查询一次的结果是一个(B )。

(A) 元组(B) 表(C) 属性(D) 数据库7. 在关系模式R(U,F)中,如果X→Y,且存在X的真子集X1,使X1→Y,则称函数依赖X→Y为(B )。

(A) 平凡函数依赖(B) 部分函数依赖(C) 完全函数依赖(D) 传递函数依赖8. 如果删除表中的数据,而不删除表,应使用的选项是(A )。

(A) DELETE (B) DROP (C) UNION (D) REMOVE9. 下列关于DELETE语句的说法中错误的是(D )。

(A) DELETE语句可以删除一行数据(B) DELETE语句可以删除表中所有数据(C) DELETE语句可以带有子查询(D) DELETE语句可以删除多个表中的数据10. 下列选项中,可以正确表达姓“张”的通配符是(B )。

学生选课数据库SQL语句练习题

学生选课数据库SQL语句练习题

一、设有一数据库,包括四个表:学生表(一、设有一数据库,包括四个表:学生表(Student Student Student)、课程表)、课程表(Course Course)、成绩表()、成绩表()、成绩表(Score Score Score)以及教师信息表()以及教师信息表()以及教师信息表(Teacher Teacher Teacher)。

四)。

四个表的结构分别如表1-1的表(一)的表(一)~~表(四)所示,数据如表1-2的表(一)的表(一)~~表(四)所示。

用SQL 语句创建四个表并完成相关题目。

表1-1数据库的表结构表(一)表(一)Student Student 属性名 数据类型 可否为空含 义 SnoChar(3) 否学号(主键)Sname Char(8) 否 学生姓名 Ssex Char(2) 否 学生性别 Sbirthday datetime 可 学生出生年月ClassChar(5) 可学生所在班级表(二)表(二)Course Course 属性名 数据类型 可否为空 含 义 CnoChar(5)否课程号(主键)Cname Varchar(10) 否 课程名称 Tno Char(3) 否教师编号(外键)表(三)表(三)Score Score 属性名 数据类型 可否为空含 义 Sno Char(3) 否 学号(外键) CnoChar(5)否课程号(外键)Degree Decimal(4,1) 可 成绩主码:主码:Sno+ Cno Sno+ Cno 表(四)表(四)Teacher Teacher 属性名 数据类型 可否为空 含 义 TnoChar(3)否 教师编号(主键) Tname Char(4) 否 教师姓名 Tsex Char(2) 否 教师性别 Tbirthday datetime 可 教师出生年月 Prof Char(6)可职称 DepartVarchar(10) 否教师所在部门表1-2数据库中的数据表(一)表(一)Student Student Sno Sname Ssex Sbirthday class 108 曾华 男 1977-09-01 95033105 匡明 男 1975-10-02 95031 107 王丽 女 1976-01-23 95033 101 李军 男 1976-02-20 95033 109 王芳 女 1975-02-10 95031 103 陆君 男1974-06-0395031表(二)表(二)Course CourseCno Cname Tno 3-105 计算机导论 825 3-245 操作系统 804 6-166 数字电路 856 9-888 高等数学831表(三)表(三)Score Score Sno Cno Degree 103 3-245 86 105 3-245 75 109 3-245 68 103 3-105 92 105 3-105 88 109 3-105 76 101 3-105 64 107 3-105 91 108 3-105 78 101 6-166 85 107 6-166 79 108 6-16681表(四)表(四)Teacher TeacherTno Tname Tsex Tbirthday Prof Depart 804 李诚 男 1958-12-02 副教授计算机系856 张旭 男 1969-03-12 讲师 电子工程系 825 王萍 女 1972-05-05助教 计算机系 831 刘冰 女 1977-08-14助教 电子工程系-- 1、查询、查询Student 表中的所有记录的Sname Sname、、Ssex 和Class 列。

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

第一讲1、什么是数据管理?答:对数据进行分类、组织、编码、存储、检索和维护,是数据处理的中心问题。

2、在数据库的三个模式中( C )。

A.内模式只有一个,而模式和外模式可以有多个B.模式只有一个,而模式和外模式可以有多个C.模式和内模式只有一个,而外模式可以有多个D.模式、内模式和外模式均只有一个3、学生社团可以接纳多名学生参加,但每个学生只能参加一个社团,从社团到学生之间的联系类型是( D )A.多对多B.一对一C.多对一D.一对多4、储蓄所有多个储户,一个储户可以在多个储蓄所存取款,储蓄所和储户之间的联系类型是:AA.多对多B.一对一C.多对一D.一对多5、学生、系、系与学生之间的一对多联系:学生(学号,姓名,年龄,性别,系号,年级)系(系号,系名,办公地点)6、系、系主任、系与系主任间的一对一联系联系隐含在关系内部:系(系号,系名,办公地点)系主任(教师编号,姓名,年龄,性别,所在系号)第四讲1、什么是关系数据库?答:关系数据库(P18):所谓关系数据库就是采用关系模型作为数据的组织方式,换名话说就是支持关系模型的数据库系统。

2、关系数据的操作语言有哪几类,分别是什么?答:(1)、关系代数(2)、关系演算(3)、SQL语言3、关系数据的完整性约束分别是什么?答:(1)、实体完整性(2)、参照完整性(3)、用户定义完整性4、什么是码及候选码?并找出下述关系中的候选码。

答:(1)、码(P20):在关系的各个属性中,能够用来惟一标识一个元组的属性或属性组。

(2)、候选码(P20):若在一个关系中,某一个属性或属性组的值能唯一地标识该关系的元组,而真子集不行,则称该属性或属性组为候选码。

(3)、该关系的候选码为:职工编号,身份证号。

5、关系数据操作的对象和结果都是什么?答:集合6、给出三个域:D1=SUPERVISOR ={ 张清玫,刘逸}D2=SPECIALITY={计算机专业,信息专业}D3=POSTGRADUATE={李勇,刘晨,王敏}则D1,D2,D3的笛卡尔积为:D1×D2×D3 ={(张清玫,计算机专业,李勇),(张清玫,计算机专业,刘晨),(张清玫,计算机专业,王敏),(张清玫,信息专业,李勇),(张清玫,信息专业,刘晨),(张清玫,信息专业,王敏),(刘逸,计算机专业,李勇),(刘逸,计算机专业,刘晨),(刘逸,计算机专业,王敏),(刘逸,信息专业,李勇),(刘逸,信息专业,刘晨),(刘逸,信息专业,王敏) }7、现有关系表:学生(宿舍编号,宿舍地址,学号,姓名,性别,专业)的主键为:BA宿舍编号B学号C宿舍地址,姓名D宿舍编号,学号8、现有关系表:医疗(患者编号,医生编号,医生姓名,诊断日期,诊断结果,恢复情况)的主键是:AA患者编号,医生编号,诊断日期B医生编号C诊断日期D患者编号9、现有如下关系:职工(职工号、姓名、性别、职务、部门编号)部门(部门编号、部门名称、姓名、部门地址、电话)其中,职工关系中的外键是(A)A部门编号B姓名C职工号D职工号,姓名10、关系数据库(实体完整性规则)规定元组在组成主码的属性上不能取空值。

11、关系数据库(参照完整性规则)规定一个基本关系的外码(对应于另一个基本关系的主码)取值只允许为空值,或者等于它所对应的基本关系中某个主码值。

12、有如下关系R与S,分别求出:R∪S,R∩S,R-S,R×S。

R: S:R∪SR∩SR×S13、如下图所示,两个关系R1和R2,它们进行_D__运算后得到R3。

A、交B、并C、笛卡尔积D、连接R1 R214、关系代数运算中,专门的关系运算有?答:选择、投影、连接、除。

15、查询信息系(IS系)全体学生σSdept = 'IS' (Student)或σ5 ='IS' (Student)16、查询年龄小于20岁的学生σSage < 20(Student)或σ4 < 20(Student)17、(1)、在Reader关系中查找男性读者。

(2)、查找计算机系所有读者。

答案:(1)、在Reader关系中查找男性读者。

σsex=‘男’(Reader) 或σ3=‘男’(Reader)结果如下:(2)、查找计算机系所有读者。

σdept=‘计算机系’(Reader) 或σ4=‘计算机系’(Reader)结果如下:18、(1)、查询关系Book中所有图书的书名和对应的出版社。

(2)、查询“中国水利水电出版社”出版的所有藏书的书名和库存数量。

(1)、查询关系Book中所有图书的书名和对应的出版社。

∏bookname,publish(book)结果如下:(2)、查询“中国水利水电出版社”出版的所有藏书的书名和库存数量(,出版社)。

∏bookname,Qty( σpublish=‘中国水利水电出版社’(Bo ok) )结果如下:19、查询选修了2号课程的学生的学号。

πSno(σCno='2'(SC ))20、下列关系运算中,哪些不属于专门的关系运算(D)A. 选择B. 投影C. 除法D.并21、下列关系运算中,哪些不属于专门的关系运算(C)A. 选择B. 投影C.广义笛卡尔积D.除法22、现有关系数据库如下:⏹学生(学号,姓名,性别,专业,出生日期)⏹教师(教师编号,姓名,所在部门,职称)⏹授课(教师编号,学号,课程编号,课程名称,教材,学分,学生成绩)用关系代数表达式实现:1.检索学习“数据库原理”课程且成绩不及格的学生的学号和教师编号。

2.检索学习“英语”课程的“计算机应用”专业的学生学号、姓名、成绩。

3.检索所有课程成绩都及格的学生的学号、姓名和专业;第六讲1、SQL语言的主要四个功能:答:数据定义、数据查询、数据操作、数据控制2、SQL数据定义语句对操作对象(如基本表、视图、索引)的三种操作方式有:答:创建、删除、修改3、建立一个“学生”表Student,它由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成。

其中学号不能为空,值是唯一的,并且姓名取值也唯一。

CREATE TABLE Student(Sno CHAR(5) NOT NULL UNIQUE,Sname CHAR(20) UNIQUE,Ssex CHAR(1) ,Sage INT,Sdept CHAR(15))4、建立一个“学生选课”表SC,它由学号Sno、课程号Cno,选修课成绩Grade组成,其中(Sno, Cno)为主码。

CREATE TABLE SC( Sno CHAR(5) ,Cno CHAR(3) ,Grade int,CONSTRAINT PK_SC Primary key (Sno, Cno))5、使用SQL语言完成如下操作(1)、在一个名为“test”的数据库创建一个名为“customers”的表,该表包含“customerid”和“companyname”两个字段,分别为char(5)和char(40)类型(2)、然后修改“companyname”字段的定义:数据类型由char(40)改为varchar(40),属性NULL改为NOT NULL。

(3)、在customers表中增加五个新的字段,分别为contactName、address、city、phone,fax。

请同学们根据实际情况来定义各字段的数据类型及长度。

(4)、为该表增加primary key约束。

(5)、删除表中的phone字段。

6、为学生-课程数据库中的Student,Course,SC三个表建立索引。

其中Student表按学号升序建唯一索引,Course表按课程号升序建唯一索引,SC表按学号升序和课程号降序建唯一索引。

CREATE UNIQUE INDEX Stusno ON Student(Sno);CREATE UNIQUE INDEX Coucno ON Course(Cno);CREATE UNIQUE INDEX SCnoON SC(Sno ASC,Cno DESC);7、查询所有读者卡号和姓名。

select cardid,namefrom reader查询结果:8、查询全体学生的学号与姓名。

SELECT Sno,SnameFROM Student9、查询全体学生的姓名、学号、所在系。

SELECT Sname,Sno,SdeptFROM Student10、(1)查询每个学生所选修的课程数量(2)求学校的男生人数及女生人数分别是多少.(3)求各门课程的最高分.11、(1)检索学生表中所有男生的记录,并以学号降序排列.select *from studentwhere ssex=‘男’order by sno desc(2)检索选修表中多于5名学生选修的并以3开头的课程的平均成绩.select avg(grade)from scwhere cno like’3%’group by cnohaving count(sno)>=5(3)检索最高成绩小于90分,最低成绩大于70分的学生的学号.select snofrom scgroup by snohaving max(grade)<90 and min(grade)>70(4)检索选修了课程的学生中最高分与最低分相差12分的学生的学号及其最高分与最低分.(注:没有成绩的课程不参与统计)select sno,max(grade),min(grade)from sc where gradegroup by snohaving max(grade)-min(grade)=1212、(1)查询所有学生所选的课程号、成绩及相应的课程名。

(2)查询每门课程的课程名及其平均分13、(1)查询考试不及格的学生姓名和成绩及相应的课程名。

select sname,grade,cnamefrom student,sc,coursewhere student.sno=sc.sno and o=o(2)查询和刘晨同一个系的学生的姓名和性别。

select s2.sname,s2ssexfrom student s1,student s2where s1.sdept=s2.sdept and s1.sname=‘刘晨’(3)查询选修人数在2人以上的课程名和学分。

select cname,ccreditfrom sc join curseon o=ogroup by cname,ccredithaving count(*)>=214、(1)查询成绩大于70的学生姓名和所在系select sname,sdeptfrom studentwhere sno in(select snofrom scwhere agrade>70)(2)查询与“数据库”这门课程的学分相同的课程号,课程名.select cno,cnamefrom coursewhere ccredit=(select ccreditfrom coursewhere cname=‘数据库’)15、设有如下关系表:R(NO,NAME,SEX,AGE,CLASS)主码是NO,其中NO为学号,NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号。

相关文档
最新文档