SQL语言(综合) 课堂练习和习题_第1页
SQL语言(综合) 课堂练习和习题_第2页
SQL语言(综合) 课堂练习和习题_第3页
SQL语言(综合) 课堂练习和习题_第4页
SQL语言(综合) 课堂练习和习题_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

SQL 语言语言 课堂练习和习题课堂练习和习题 一 选择题一 选择题 1 SQL 语言是 的语言 容易学习 A 过程化 B 非过程化 C 格式化 D 导航式 2 SQL 语言的数据操纵语句包括 SELECT INSERT UPDATE DELETE 等 其中最重要的 也是 使用最频繁的语句是 A SELECT B INSERT C UPDATE D DELETE 3 在视图上不能完成的操作是 A 更新视图 B 查询 C 在视图上定义新的表 D 在视图上定义新的视图 4 SQL 语言集数据查询 数据操纵 数据定义和数据控制功能于一体 其中 CREATE DROP ALTER 语句是实现哪种功能 A 数据查询 B 数据操纵 C 数据定义 D 数据控制 5 SQL 语言中 删除一个视图的命令是 A DELETE B DROP C CLEAR D REMOVE 6 在 SQL 语言中的视图 VIEW 是数据库的 A 外模式 B 模式 C 内模式 D 存储模式 7 下列的 SQL 语句中 不是数据定义语句 A CREATE TABLE B DROP VIEW C CREATE VIEW D GRANT 8 若要撤销数据库中已经存在的表 S 可用 A DELETE TABLE S B DELETE S C DROP TABLE S D DROP S 9 若要在基本表 S 中增加一列 CN 课程名 可用 A ADD TABLE S CN CHAR 8 B ADD TABLE S ALTER CN CHAR 8 C ALTER TABLE S ADD CN CHAR 8 D ALTER TABLE S ADD CN CHAR 8 10 学生关系模式 S S Sname Sex Age S 的属性分别表示学生的学号 姓名 性别 年龄 要在表 S 中删除一个属性 年龄 可选用的 SQL 语句是 A DELETE Age from S B ALTER TABLE S DROP Age C UPDATE S Age D ALTER TABLE S Age 11 有关系 S S SNAME SAGE C C CNAME SC S C GRADE 其中 S 是学生号 SNAME 是学生姓名 SAGE 是学生年龄 C 是课程号 CNAME 是课程名称 要查询选修 ACCESS 课的 年龄不小于 20 的全体学生姓名的 SQL 语句是 SELECT SNAME FROM S C SC WHERE 子句 这里的 WHERE 子句的内容是 A S S SC S and C C SC C and SAGE 20 and CNAME ACCESS B S S SC S and C C SC C and SAGE in 20 and CNAME in ACCESS C SAGE in 20 and CNAME in ACCESS D SAGE 20 and CNAME ACCESS 12 设关系数据库中一个表 S 的结构为 S SN CN grade 其中 SN 为学生名 CN 为课程名 二者 均为字符型 grade 为成绩 数值型 取值范围 0 100 若要把 张二的化学成绩 80 分 插入 S 中 则 可用 A ADD INTO S VALUES 张二 化学 80 B INSERT NTO S VALUES 张二 化学 80 C ADD INTO S VALUES 张二 化学 80 D INSERT INTO S VALUES 张二 化学 80 13 设关系数据库中一个表 S 的结构为 S SN CN grade 其中 SN 为学生名 CN 为课程名 二者 均为字符型 grade 为成绩 数值型 取值范围 0 100 若要更正王二的化学成绩为 85 分 则可用 A UPDATE S SET grade 85 WHERE SN 王二 AND CN 化学 B UPDATE S SET grade 85 WHERE SN 王二 AND CN 化学 C UPDATE grade 85 WHERE SN 王二 AND CN 化学 D UPDATE grade 85 WHERE SN 王二 AND CN 化学 14 在 SQL 语言中 子查询是 A 返回单表中数据子集的查询语言 B 选取多表中字段子集的查询语句 C 选取单表中字段子集的查询语句 D 嵌入到另一个查询语句之中的查询语句 15 SQL 是一种 语言 A 高级算法 B 人工智能 C 关系数据库 D 函数型 16 有关系 S S SNAME SEX C C CNAME SC S C GRADE 其中 S 是学生号 SNAME 是学生姓名 SEX 是性别 C 是课程号 CNAME 是课程名称 要查询选修 数据库 课的全体男生 姓名的 SQL 语句是 SELECT SNAME FROM S C SC WHERE 子句 这里的 WHERE 子句的内 容是 A S S SC S and C C SC C and SEX 男 and CNAME 数据库 B S S SC S and C C SC C and SEX in 男 and CNAME in 数据库 C SEX 男 and CNAME 数据库 D S SEX 男 and CNAME 数据库 17 若用如下的 SQL 语句创建了一个表 SC CREATE TABLE SC S CHAR 6 NOT NULL C CHAR 3 NOT NULL SCORE INTEGER NOTE CHAR 20 向 SC 表插入如下行时 行可以被插入 A 201009 111 60 必修 B 200823 101 NULL NULL C NULL 103 80 选修 D 201132 NULL 86 18 假设学生关系 S S SNAME SEX 课程关系 C C CNAME 学生选课关系 SC S C GRADE 要查询选修 Computer 课的男生姓名 将涉及到关系 A S B S SC C C SC D S C SC 19 SQL Server2000的字符型系统数据类型主要包括 A int money char B char varchar text C datetime binary int D char varchar int 20 如果要在 SQL Server2000中存储图形图像 Word 文档文件 不可采用的数据类型是 A binary B varbinary C image D text 21 不属于 SQL Server2000系统全局变量的是 A Error B Connections C Fetch Status D Records 22 SQL Server2000提供的单行注释语句是使用 开始的一行内容 A B C D 23 下列标识符可以作为局部变量使用 A Myvar B My var C Myvar D My var 24 在 SQL Server 中 WAITFOR 语句中的 DELAY 参数是指 A 要等待的时间 B 指示 SQL Server 一直等到指定的时间过去 C 用于指示时间 D 以上都不是 25 下面 组命令 将变量 count 值赋值为 1 A DECLARE count SELECT count 1 B DIM count 1 C DECLARE count SELECT count 1 D DIM count SELECT count 1 26 下列 赋值语句是错误的 A SELECT C 1 B SET C 1 C SELECT DJ 单价 FROM book ORDER BY 单价 DESC D SET DJ 单价 FROM book ORDER BY 单价 DESC 27 在 SQL Server 编程中 可使用 将多个语句捆绑 A B BEGIN END C D 28 在 SQL Server 2000 中 下列变量名正确的是 A sum B j C sum D 4kk 选择题答案 1 B 2 A 3 C 4 C 5 B 6 A 7 D 8 C 9 C 10 B 11 A 12 D 13 A 14 D 15 C 16 A 17 B 18 D 19 B 20 D 21 D 22 B 23 C 24 A 25 A 26 D 27 B 28 A 二 填空题二 填空题 1 在 T SQL 编程语句中 WHILE 结构可以根据条件多次重复执行一条语句或一个语句块 还可以使用 和 CONTINUE 关键字在循环内部控制 WHILE 循环中语句的执行 2 在 T SQL 编程语句中 用于使语句在某一时刻或在一段时间间隔后继续执行 1 break 2 waitfor 三 简答题三 简答题 1 试述 SQL 语言的特点 答 1 综合统一 SQL 语言集数据定义语言 DDL 数据操纵语言 DML 数据控制语言 DCL 的功能 于一体 2 高度非过程化 用 SQL 语言进行数据操作 只要提出 做什么 而无须指明 怎么做 因此无需 了解存取路径 存取路径的选择以及 SQL 语句的操作过程由系统自动完成 3 面向集合的操作方式 SQL 语言采用集合操作方式 不仅操作对象 查找结果可以是元组的集 合 而且一次插入 删除 更新操作的对象也可以是元组的集合 4 以同一种语法结构提供两种使用方式 SQL 语言既是自含式语言 又是嵌入式语言 作为自含 式语言 它能够独立地用于联机交互的使用方式 也能够嵌入到高级语言程序中 供程序员设计 程序时使用 5 语言简捷 易学易用 2 试述 SQL 的定义功能 答 SQL 的数据定义功能包括定义表 定义视图和定义索引 SQL 语言使用 CREATE TABLE 语句定义建立基本表 ALTER TABLE 语句修改基本表定义 DROP TABLE 语句删除基本表 建立索引使用 CREATE INDEX 语句建立索引 DROP INDEX 语句删除索引表 SQL 语言使用 CREATE VIEW 命令建立视图 DROP VIEW 语句删除视图 3 用 SQL 语句建立 关系数据库和关系代数 课堂练习和习题 中的四个表 答 对于 S 表 S SNO SNAME STATUS CITY 建 S 表 CREATE TABLE S SNO CHAR 3 SNAME CHAR 10 STATUS CHAR 2 CITY CHAR 10 P PNO PNAME COLOR WEIGHT 建 P 表 CREATE TABLE P PNO CHAR 3 PNAME CHAR 10 COLOR CHAR 4 WEIGHT INT J JNO JNAME CITY 建 J 表 CREATE TABLE J JNO CHAR 3 JNAME CHAR 10 CITY CHAR 10 SPJ SNO PNO JNO QTY 建 SPJ 表 CREATE TABLE SPJ SNO CHAR 3 PNO CHAR 3 JNO CHAR 3 QTY INT 4 针对上题中建立的四个表试用 SQL 语言完成 关系数据库和关系代数 课堂练习和习题 的查询 答 1 求供应工程 J1 零件的供应商号码 SNO SELECT SNO FROM SPJ WHERE JNO J1 2 求供应工程 J1 零件 P1 的供应商号码 SNO SELECT SNO FROM SPJ WHERE JNO J1 AND PNO P1 3 求供应工程 J1 零件为红色的供应商号码 SNO SELECT SNO FROM SPJ WHERE JNO J1 AND PNO IN SELECT PNO FROM P WHERE COLOR 红 或 SELECT SNO FROM SPJ P WHERE JNO J1 AND SPJ PNO P PNO AND COLOR 红 4 求没有使用天津供应商生产的红色零件的工程号 JNO 解析 用 SQL 语言表示如下 SELECT JNO FROM J WHERE NOT EXISTS SELECT FROM SPJ WHERE SPJ JNO J JNO AND SNO IN SELECT SNO FROM S WHERE CITY 天津 AND PNO IN SELECT PNO FROM P WHERE COLOR 红 或 SELECT JNO FROM J WHERE NOT EXISTS SELECT FROM SPJ S P WHERE SPJ JNO J JNO AND SPJ SNO S SNO AND SPJ PNO P PNO AND S CITY 天津 AND P COLOR 红 注意 从 J 表入手 以包含那些尚未使用任何零件的工程号 5 求至少用了供应商 S1 所供应的全部零件的工程号 JNO 解析 用 SQL 语言表示如下 SELECT DISTINCT JNO FROM SPJ SPJZ WHERE NOT EXISTS SELECT FROM SPJ SPJX WHERE SNO S1 AND NOT EXISTS SELECT FROM SPJ SPJY WHERE SPJY PNO SPJX PNO AND SPJY JNO SPJZ JNO AND SPJY SNO S1 5 针对习题 3 中的四个表试用 SQL 语言完成以下各项操作 1 找出所有供应商的姓名和所在城市 2 找出所有零件的名称 颜色 重量 3 找出使用供应商 S1 所供应零件的工程号码 4 找出工程项目 J2 使用的各种零件的名称及其数量 5 找出上海厂商供应的所有零件号码 6 找出使用上海产的零件的工程名称 7 找出没有使用天津产的零件的工程号码 8 把全部红色零件的颜色改成蓝色 9 由 S5 供给 J4 的零件 P6 改为由 S3 供应 请作必要的修改 10 从供应商关系中删除 S2 的记录 并从供应情况关系中删除相应的记录 11 请将 S2 J6 P4 200 插入供应情况关系 答 1 找出所有供应商的姓名和所在城市 SELECT SNAME CITY FROM S 2 找出所有零件的名称 颜色 重量 SELECT PNAME COLOR WEIGHT FROM P 3 找出使用供应商 S1 所供应零件的工程号码 SELECT JNO FROM SPJ WHERE SNO S1 4 找出工程项目 J2 使用的各种零件的名称及其数量 SELECT P PNAME SPJ QTY FROM P SPJ WHERE P PNO SPJ PNO AND SPJ JNO J2 5 找出上海厂商供应的所有零件号码 SELECT DISTINCT PNO FROM SPJ WHERE SNO IN SELECT SNO FROM S WHERE CITY 上海 6 找出使用上海产的零件的工程名称 SELECT JNAME FROM J SPJ S WHERE J JNO SPJ JNO AND SPJ SNO S SNO AND S CITY 上海 或 SELECT JNAME FROM J WHERE JNO IN SELECT JNO FROM SPJ S WHERE SPJ SNO S SNO AND S CITY 上海 7 找出没有使用天津产的零件的工程号码 SELECT JNO FROM J WHERE NOT EXISTS SELECT FROM SPJ WHERE SPJ JNO J JNO AND SNO IN SELECT SNO FROM S WHERE CITY 天津 或 SELECT JNO FROM J WHERE NOT EXISTS SELECT 1 FROM SPJ S WHERE SPJ JNO J JNO AND SPJ SNO S SNO AND S CITY 天津 8 把全部红色零件的颜色改成蓝色 UPDATE P SET COLOR 蓝 WHERE COLOR 红 9 由 S5 供给 J4 的零件 P6 改为由 S3 供应 请作必要的修改 UPDATE SPJ SET SNO S3 WHERE SNO S5 AND JNO J4 AND PNO P6 10 从供应商关系中删除 S2 的记录 并从供应情况关系中删除相应的记录 DELETE FROM SPJ WHERE SNO S2 或 DELETE FROM S WHERE SNO S2 解析 注意删除顺序 应该先从 SPJ 表中删除供应商 S2 所供应零件的记录 然后从从 S 表中删除 S2 11 请将 S2 J6 P4 200 插入供应情况关系 INSERT INTO SPJ SNO JNO PNO QTY VALUES S2 J6 P4 200 或 INSERT INTO SPJ VALUES S2 P4 J6 200 6 针对系统示例数据库中的相应表 写出满足要求的 SQL 语句 1 查询 pubs 数据库的 authors 表中的作者的姓 au lname 名 au fname 和电话号码 phone 2 使用 TOP 关键字 从 Northwind 数据库的 customers 表中搜索返回前 20 的数据 3 查询 Northwind 数据库的 Orders 表中的数据 并将其中的货物重量 feight 增加 50 4 使用 WHERE 子句从 Northwind 数据库的 Products 表中检索出所有单位价格 UnitPrice 超过 50 美元的货物名称 Product Name 货物代号 ProductID 以及每单位 重量 QuantityPerUnit 5 在 Northwind 数据库的 Employees 表中搜索出职务 Title 为销售代表 Sales Representative 称呼 TitleOfCourtesy 为小姐 MS 的所有职员的名 FirstName 姓 LastName 和生日 BirhthDate 6 查询在 Northwind 数据库的 Employees 表中以字母 A 作 Firstname 第一个字母的雇员的 Firstname 和 Lastname 7 查询 Northwind 数据库 Employees 表中所有雇员的 Firstname 和 Lastname 并按生日 BirthDate 从小到大进行排列 8 在 Northwind 数据库的 Products 表中查询出每个供应商 Suppliers 所提供的每一种平 均价格 Unitprice 超过 15 美元的产品 并按供应商的 ID 分类 四 四 写出下列每条语句或程序段的功能写出下列每条语句或程序段的功能 假设存在名为 AAA 的数据库 包括 Students 学号 char 8 姓名 varchar 8 年龄 int 专业 varchar 20 入学日期 DateTime 和 Score 学号 char 8 课程名 varchar 10 成 绩 numeric 5 2 两张表 1 SELECT FROM Students WHERE DATEPART year 入学日期 DATEPART year GETDATE 2 DECLARE MyNO CHAR 8 SET MyNO 20030001 IF SELECT 专业 FROM Students WHERE 学号 MyNO 计算机软件 BEGIN SELECT AVG 成绩 AS 平均成绩 FROM Score WHERE 学号 MyNO END ELSE PRINT 学号为 MyNO 的学生不存在或不属于软件专业 GO 3 declare a numeric 5 2 set a select avg 成绩 from score select from score where 成绩 a 4 declare a numeric 5 2 b numeric 5 2 set a select max 成绩 from score set b select min 成绩 from score print a b 5 declare a char 6 set a 刘亮 if exists select from students where 姓名 a print 姓名为 a 的同学存在 else print 姓名为 a 的同学不存在 6 declare a char 8 set a 计算机 select 计算机专业人数 count from students where left 专业 3 a 7 select year 入学日期 as 入学年份 count as 人数 from students group by year 入学日期 8 select month 入学日期 as 入学月份 count as 人数 from students group by month 入学日期 9 select day 入学日期 as 入学日号 count as 人数 from students group by day 入学日期 10 create procedure xxk1 as begin select from students x score y where x 学号 y 学号 end 11 create procedure xxk2 as begin select x 学号 x 姓名 x 专业 count as 门数 from students x score y where x 学号 y 学号 group by x 学号 x 姓名 x 专业 end 12 create procedure xxk3 as begin select 学号 avg 成绩 as 平均成绩 from score group by 学号 end 13 create procedure xxk4 a char 8 b varchar 10 c numeric 5 2 as begin update score set 成绩 c where 学号 a and 课程名 b end 14 create procedure xxk5 a char 8 b varchar 10 c numeric 5 2 as begin insert into score values a b c end 15 create procedure xxk6 a char 8 b varchar 10 as begin delete from score where 学号 a and 课程名 b end 16 eclare a char 8 b varchar 10 c numeric 5 2 declare d int set d 0 declare xxx cursor for select 学号 课程名 成绩 from score open xxx fetch xxx into a b c while fetch status 0 begin set d d 1 fetch from xxx into a b c end close xxx deallocate xxx print d 17 declare a char 8 b varchar 10 c numeric 5 2 declare xxx cursor for select 学号 课程名 成绩 from score open xxx fetch xxx into a b c while fetch status 0 begin print a replicate 3 b str c replicate 3 case when c 90 then 优秀 when c 70 then 良好 when c 60 then 及格 else 不及格 end fetch from xxx into a b c end close xxx deallocate xxx 18 declare c numeric 5 2 declare c1 int c2 int c3 int c4 int set c1 0 set c2 0 set c3 0 set c4 0 declare xxx cursor for select 成绩 from score open xxx fetch xxx into c while fetch status 0 begin if c 90 set c1 c1 1 else if c 70 set c2 c2 1 else if c 60 set c3 c3 1 else set c4 c4 1 fetch from xxx into c end close xxx deallocate xxx print 优秀生人数 str c1 5 print 良好生人数 str c2 5 print 及格生人数 str c3 5 print 及格生人数 str c4 5 19 declare a char 8 b varchar 10 declare c numeric 5 2 declare d int set d 80 declare xxx cursor for select 学号 课程名 成绩 from score open xxx fetch xxx into a b c while fetch status 0 begin if c d print a replicate 3 b str c 5 fetch from xxx into a b c end close xxx deallocate xxx 20 declare a char 8 b varchar 10 c numeric 5 2 declare s char 8 r varchar 10 set s 20030001 set r 数学 set c 84 declare xxx cursor for select 学号 课程名 from score open xxx fetch xxx into a b while fetch status 0 begin if a s and b r update score set 成绩 c where current of xxx fetch from xxx into a b end close xxx deallocate xxx 参考答案 1 从 Students 表中查询出所有当年 系统时间 入学的学生记录 2 首先定义一个名为 MyNo 的局部变量 并给它赋初值 如果 MyNo 属于计算机软 件专业 则显示出平均成绩 否则显示 学号为 MyNo 的学生不存在或不属于软件专业 3 从 score 表中查询出大于等于平均成绩的所有记录 4 求出 score 表中最高成绩与最低成绩的分数之差 5 从 students 表中查询姓名为 a 的值的同学是否存在 根据不同情况显示出相应信息 6 从 students 表中统计出专业名开头为 a 的值 即 计算机 的所有学生人数 7 从 students 表中分组统计出每个年份入学的学生人数 8 从 students 表中分组统计出每个月份入学的学生人数 9 从 students 表中分组统计出每个日号入学的学生人数 10 显示出 AAA 库中所有学生的记录信息及选课成绩 11 显示出 AAA 库中每个学生的学号 姓名 专业等信息及选课门数 12 显示出 AAA 库中每个学生的平均成绩 13 修改 score 表中学号为 a 的值 课程名为 b 的值的学生的成绩为 c 的值 14 向 score 表中插入学号为 a 的值 课程名为 b 的值 成绩为 c 的值的学生成绩记 录 15 从 score 表中删除学号为 a 的值 课程名为 b 的值的学生成绩记录 16 从 score 表中统计并显示出记录总数 17 显示出 score 表中每个成绩记录 并在每条记录最后给出优秀 良好 及格 不及格 等相应等级 18 从 score 表中按成绩统计并显示出优秀 良好 及格 不及格各多少人 19 显示出 score 表中成绩大于等于 d 值的所有记录 20 修改 score 表中学号为 a 的值 课程名为 b 的值的学生的成绩为 c 的值 五 问题描述 本题用到下面三个关系表 五 问题描述 本题用到下面三个关系表 CARD CNO NAME CLASS 借书卡 CNO 卡号 NAME 姓名 CLASS 班级 BOOKS BNO BNAME AUTHOR PRICE QUANTITY 图书 BNO 书号 BNAME 书名 AUTHOR 作者 PRICE 单价 QUANTITY 库存册数 BORROW CNO BNO RDATE 借书记录 CNO 借书卡号 BNO 书号 RDATE 还书日期 备注 限定每人每种书只能借一本 库存册数随借书 还书而改变 要求实现如下要求实现如下 15 个处理 个处理 1 写出建立写出建立 BORROW 表的表的 SQL 语句 要求定义主码完整性约束和引用完整性约束 语句 要求定义主码完整性约束和引用完整性约束 2 找出借书超过找出借书超过 5 本的读者本的读者 输出借书卡号及所借图书册数 输出借书卡号及所借图书册数 3 查询借阅了查询借阅了 水浒水浒 一书的读者 输出姓名及班级 一书的读者 输出姓名及班级 4 查询过期未还图书 输出借阅者 卡号 查询过期未还图书 输出借阅者 卡号 书号及还书日期 书号及还书日期 5 查询书名包括查询书名包括 网络网络 关键词的图书 输出书号 书名 作者 关键词的图书 输出书号 书名 作者 6 查询现有图书中价格最高的图书 输出书查询现有图书中价格最高的图书 输出书名及作者 7 查询当前借了查询当前借了 计算方法计算方法 但没有借但没有借 计算方法习题集计算方法习题集 的读者 输出其借书卡号 并按的读者 输出其借书卡号 并按 卡号降序排序输出 卡号降序排序输出 8 将将 C01 班同学所借图书的还期都延长一周 班同学所借图书的还期都延长一周 9 从从 BOOKS 表中删除当前无人借阅的图书记录 表中删除当前无人借阅的图书记录 10 如果经常按书名查询图书信息 请建立合适的索引 如果经常按书名查询图书信息 请建立合适的索引 11 在 在 BORROW 表上建立一个触发器 完成如下功能 如果读者借阅的书名是表上建立一个触发器 完成如下功能 如果读者借阅的书名是 数据库数据库 技术及应用技术及应用 就将该读者的借阅记录保存在 就将该读者的借阅记录保存在 BORROW SAVE 表中 注表中 注 ORROW SAVE 表结构同表结构同 BORROW 表 表 12 建立一个视图 显示 建立一个视图 显示 力力 01 班学生的借书信息 只要求显示姓名和书名 班学生的借书信息 只要求显示姓名和书名 13 查询当前同时借有 查询当前同时借有 计算方法计算方法 和和 组合数学组合数学 两本书的读者 输出其借书卡号 并按卡两本书的读者 输出其借书卡号 并按卡 号升序排序输出 号升序排序输出 14 假定在建 假定在建 BOOKS 表时没有定义主码 写出为表时没有定义主码 写出为 BOOKS 表追加定义主码的语句 表追加定义主码的语句 15 对 对 CARD 表做如下修改 表做如下修改 a 将将 NAME 最大列宽增加到最大列宽增加到 10 个字符 假定原为个字符 假定原为 6 个字符 个字符 b 为该表增加为该表增加 1 列列 NAME 系名 系名 可变长 最大 可变长 最大 20 个字符 个字符 参考答案 未上机验证 1 写出建立写出建立 BORROW 表的表的 SQL 语句 要求定义主码完整性约束和引用完整性约束语句 要求定义主码完整性约束和引用完整性约束 CREATE TABLE BORROW CNO int FOREIGN KEY REFERENCES CARD CNO BNO int FOREIGN KEY REFERENCES BOOKS BNO RDATE datetime PRIMARY KEY CNO BNO 2 找出借书超过找出借书超过 5 本的读者本的读者 输出借书卡号及所借图书册数输出借书卡号及所借图书册数 SELECT CNO 借图书册数 COUNT FROM BORROW GROUP BY CNO HAVING COUNT 5 3 查询借阅了查询借阅了 水浒水浒 一书的读者 输出姓名及班级一书的读者 输出姓名及班级 SELECT FROM CARD c WHERE EXISTS SELECT FROM BORROW a BOOKS b WHERE a BNO b BNO AND b BNAME N 水浒 AND a CNO c CNO 4 查询过期未还图书 输出借阅者 卡

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论