1.从USER表中查询所有用户的姓名和单位select姓名,单位
From https://www.wendangku.net/doc/ca4602596.html,ers
2.查询所有图书的信息
select*
From dbo.BookInfo
3.查询单位为“计算机学院”的用户的全部信息select*
From https://www.wendangku.net/doc/ca4602596.html,ers
where单位='计算机学院';
4.查询已经预约但还没有借出的书的信息
select*
from dbo.Books
where状态='3'
5.查询在这一星期之内借出且还没有归还的所有书的借阅证号、书号。select借阅证号,书号
From dbo.Loan
Where DATEDIFF(DAY,借阅日期,GETDATE())<=7;
6.查询“清华出版社”出版的所有英文书的书名、作者、价格。select书名,作者,价格
From dbo.BookInfo
where出版社='清华大学出版社'AND语言='英文'
7查询在流通总库或者是属于管理学院资料室的尚未借出的书select distinct BookInfo.书名
from[dbo].[Books],[dbo].[BookInfo]
where BookInfo.ISBN=Books.ISBN and
Books.状态='0'and
Books.位置IN('流通总库','管理学院资料室');
8.查询价格在30元到50元之间的书
select书名
from[dbo].[BookInfo]
where价格between30and50;
9.查询2002年的借阅历史情况
select*
from[dbo].[LoanHist]
where借阅日期between'2002-01-0100:00:00.000'and'2002-12-3100:00:00.000';
10.查询李军、吴红、刘明三个人合作编写的书的书名、作者、出版社和价格select书名,作者,出版社,价格
from[dbo].[BookInfo]
where作者='李军,吴红,刘明';
11.查询书名包含“数据库”的所有书名、作者、出版社和价格
select书名,作者,出版社,价格
from[dbo].[BookInfo]
where书名LIKE'%数据库%'
12.查询书名包含“数据库”的所有书名、作者、出版社及价格*1.5
select书名,作者,出版社,1.5*价格
from[dbo].[BookInfo]
where书名LIKE'%数据库%'
13.查询所有预约借书但还没有预约成功的信息,并按预约时间的先后排序。select*
from[dbo].[Reservation],[dbo].[Books]
where Books.ISBN=Reservation.ISBN
AND Reservation.状态!='T'
AND Books.状态IN('1','3')
ORDER BY预约日期ASC;
14.对上题的查询结果按每种书先排序,同一种书再按预约日期降序排序select ISBN,预约日期,借阅证号
from[dbo].[Reservation]
where Reservation.状态!='T'
order by ISBN,预约日期ASC;
15.查询书的价格在所有书中排在前10%的书名、作者、出版社和定价
16.查询所有图书的语言种类
select distinct语言
from[dbo].[BookInfo];
17.查询借阅用户总人数
select count(姓名)as人数
from[dbo].[Users];
18.查询当前正借有书的用户总人数
select COUNT(distinct借阅证号)
from[dbo].[Loan];
19.查询因用户丢失图书而赔偿的总金额。
select sum(金额)
from[dbo].[money]
where原因='丢失图书';
20.查询用户对书的平均借阅时间:按照用户分组,查询每个用户的平均借阅时间
21.查询书的价格最高和最低的两种书。
SELECT[书名],[价格]
FROM BookInfo
WHERE[价格]=(SELECT MAX([价格])FROM BookInfo)
UNION
SELECT[书名],[价格]
FROM BookInfo
WHERE[价格]=(SELECT MIN([价格])FROM BookInfo);
22.查询图书馆从各个出版社购进的书各有多少种。
select 出版社,count (出版社)
from [dbo].[BookInfo]
group by 出版社
;23.查询每种图书的书名和其库存量,并对结果按库存量排序
select ISBN ,count (ISBN )
from [dbo].[Books]
group by ISBN
order by count (ISBN )DESC ;select ISBN ,count (ISBN )as 库存量from [dbo].[Books]group by ISBN order by 库存量DESC
24.对上题的查询结果只返回库存量在10(2)本以上的书名和库存量
select BookInfo.书名,count(BookInfo.ISBN)as库存量
from[dbo].[Books],[dbo].[BookInfo]
where BookInfo.ISBN=Books.ISBN
group by BookInfo.书名
having count(BookInfo.ISBN)>2;
25.查询2002年各种情况收费的总数大于5000元的金额和收费原因
select原因,sum(金额)
from[dbo].[money]
where日期between'2002-01-0100:00:00.000'and'2002-12-3100:00:00.000' group by原因
having sum(金额)>6000.00
26.查询当前借书用户的借阅证号、姓名、书号、借书日期
select Loan.借阅证号,Users.姓名,Loan.书号,Loan.借阅日期
from[dbo].[Users],[dbo].[Loan]
where Loan.借阅证号=Users.借阅证号;
27.查询当前借书过期还没归还的用户的借阅证号、姓名、书名、借书日期、过期天数,并按借阅证号排序