SQL题目 帮忙做下..
答案:1 悬赏:70 手机版
解决时间 2021-03-07 14:40
- 提问者网友:凉末
- 2021-03-07 00:29
SQL题目 帮忙做下..
最佳答案
- 五星知识达人网友:長槍戰八方
- 2021-03-07 01:31
--创建数据库
create database test
go
--使用数据库
use test
go
--创建借书卡表
create table CARD
(
CNO int primary key,--卡号
NAME varchar(20),--姓名
CLASS int --班级
)
--创建图书表
create table BOOKS
(
BNO int primary key--书号
BNAME varchar(20),--书名
AUTHOR varchar(20),--作者
PRICE float,--单价
QUANTITY int--库存册数
)
--创建借书记录表
create table BORROW
(
CNO references CARD(CNO),--借书卡号
BNO references BOOKS(BNO),--书号
RDATE datetime--还书日期
)
--添加借书卡信息
insert into CARD values(10001,'关羽',0701)
insert into CARD values(10002,'张飞',0702)
insert into CARD values(10003,'赵云',0703)
insert into CARD values(10004,'马超',0704)
insert into CARD values(10005,'黄忠',0705)
--添加图书信息
insert into BOOKSvalues values(101,'孙子兵法','诸葛亮',49,5)
insert into BOOKSvalues values(102,'数据结构','诸葛亮',18,4)
insert into BOOKSvalues values(103,'青冥剑','诸葛亮',10,3)
insert into BOOKSvalues values(104,'数学','诸葛亮',10,2)
insert into BOOKSvalues values(105,'炎黄战靴','诸葛亮',50,0)
--添加借书记录信息
insert into BORROW values(10001,101,'1989-11-08')
insert into BORROW values(10002,102,'1987-6-30')
insert into BORROW values(10003,103,'1989-5-13')
insert into BORROW values(10004,104,'2010-11-03')
insert into BORROW values(10005,105,'2008-8-8')
--找出借书超过5本的读者,输出借书卡号及所借图书册数
select NAME,count(BNO),CNO from BORROW,CARD,BOOKS
where BORROW.CNO = CARD.CNO and BORROW.BNO = BOOKS.BNO
and count(BNO) >5
--查询借阅了"数据结构"一书的读者,输出姓名及班级
select Name,CLASS from CARD,BOOKS
where BOOKS.BNAME = '数据结构'
--查询书名包括"数学"关键词的图书,输出该书的书号、书名、作者
select BNO,BNAME,AUTHOR from BOOKS where BNAME like '%数学%'
--查询现有图书中价格最高的图书,输出书名及作者
select BNAME,AUTHOR,price from BOOKS order by PRICE desc
--将"0701"班同学所借图书的还期都延长一周
select * as '还书日期' from CARD where class = '0701' and RDATE = between '1989-11-08' and '1989-11-15'
create database test
go
--使用数据库
use test
go
--创建借书卡表
create table CARD
(
CNO int primary key,--卡号
NAME varchar(20),--姓名
CLASS int --班级
)
--创建图书表
create table BOOKS
(
BNO int primary key--书号
BNAME varchar(20),--书名
AUTHOR varchar(20),--作者
PRICE float,--单价
QUANTITY int--库存册数
)
--创建借书记录表
create table BORROW
(
CNO references CARD(CNO),--借书卡号
BNO references BOOKS(BNO),--书号
RDATE datetime--还书日期
)
--添加借书卡信息
insert into CARD values(10001,'关羽',0701)
insert into CARD values(10002,'张飞',0702)
insert into CARD values(10003,'赵云',0703)
insert into CARD values(10004,'马超',0704)
insert into CARD values(10005,'黄忠',0705)
--添加图书信息
insert into BOOKSvalues values(101,'孙子兵法','诸葛亮',49,5)
insert into BOOKSvalues values(102,'数据结构','诸葛亮',18,4)
insert into BOOKSvalues values(103,'青冥剑','诸葛亮',10,3)
insert into BOOKSvalues values(104,'数学','诸葛亮',10,2)
insert into BOOKSvalues values(105,'炎黄战靴','诸葛亮',50,0)
--添加借书记录信息
insert into BORROW values(10001,101,'1989-11-08')
insert into BORROW values(10002,102,'1987-6-30')
insert into BORROW values(10003,103,'1989-5-13')
insert into BORROW values(10004,104,'2010-11-03')
insert into BORROW values(10005,105,'2008-8-8')
--找出借书超过5本的读者,输出借书卡号及所借图书册数
select NAME,count(BNO),CNO from BORROW,CARD,BOOKS
where BORROW.CNO = CARD.CNO and BORROW.BNO = BOOKS.BNO
and count(BNO) >5
--查询借阅了"数据结构"一书的读者,输出姓名及班级
select Name,CLASS from CARD,BOOKS
where BOOKS.BNAME = '数据结构'
--查询书名包括"数学"关键词的图书,输出该书的书号、书名、作者
select BNO,BNAME,AUTHOR from BOOKS where BNAME like '%数学%'
--查询现有图书中价格最高的图书,输出书名及作者
select BNAME,AUTHOR,price from BOOKS order by PRICE desc
--将"0701"班同学所借图书的还期都延长一周
select * as '还书日期' from CARD where class = '0701' and RDATE = between '1989-11-08' and '1989-11-15'
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯