当前位置:首页 » 编程语言 » sql求图书馆所有的藏书册数
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql求图书馆所有的藏书册数

发布时间: 2022-08-16 19:51:21

sql数据库图书馆管理系统求代码!急用!

USE master go CREATE DATABASE tangzhangsentsg ON ( NAME = librarysystem, FILENAME = 'c:\tangzhangsenlibrary.mdf', SIZE = 10, MAXSIZE = 50, FILEGROWTH = 5 ) LOG ON ( NAME = 'library', FILENAME = 'c:\tangzhangsenlibrary.ldf', SIZE = 5MB, MAXSIZE = 25MB, FILEGROWTH = 5MB ) go

② 怎样用SQL语句表示每个月统计并输出2006年每个月份的图书借出的册数

1. 求总藏书量、藏书总金额,总库存册数、最高价、最低价。
select count(图书编号) as 总藏书量,
sum(定价) as 藏书总金额,
sum(实际数量) as 总库存册数,
max(定价) as 最高价,
min(定价) as 最低价
from 图书卡片
go
2. 列出藏书在10本以上的书(书名、作者、出版社、年份)。
select 图书名称,作者姓名,出版社,出版日期
from 图书卡片
group by 图书编号 having(coung(1)>10)
order by 图书名称
go
3. 哪些出版社的藏书种类数超过100种。
select 出版社 as '藏书种类数超过100种的出版社'
from 图书卡片
group by 出版社 having(count(类别)>100)
order by 出版社
go
4. 目前实际已借出多少册书?
select sum(借出数量) as '借出数量'
from 图书卡片
go
5. 年份最久远的书。
select top 1 with ties 图书名称 from 图书卡片
order by 出版日期
go
6. “数据库系统原理教程,王珊编,清华大学出版社,1998年出版”还有几本?
select count(1) from 图书卡片
where concaints(摘要,'"数据库系统原理教程,王珊编,清华大学出版社,1998年出版"')
go
7. 哪一年的图书最多?
select top 1 with ties convert(substring(出版日期,1,4)) as 年份,count(1) as '图书数量'
from 图书卡片
group by 出版日期
order by 图书数量 desc
go
8. 哪本借书证未归还的图书最多?
select top 1 with ties A.读者编号,count(1) as '借书数量'
from 图书卡片 A,借阅 B
where A.图书编号=B.图书编号
group by A.读者编号
order by 借书数量 desc
go
9、平均每本借书证的借书册数。
select avg(借阅数量) as '平均每本借书证的借书册数'
from 借阅
go

10.哪个系的同学平均借书册数最多?
select top 1 with ties A.工作单位,avg(借阅数量) as '平均借阅数量'
from 读者 A,借阅 B
where A.读者编号=B.读者编号
group by A.工作单位
order by 平均借阅数量' desc
go

11. 最近两年都未被借过的书。
select 图书名称
from 图书卡片
where 图书编号 in(select 图书编号 from 借阅 where datediff(year,借阅日期,getdate())>2)
go
12. 列出那些借了图书逾期未归还的借书证号和图书名。
select A.读者编号 as '借书证号',B.图书名称
from 读者 as A inner join 图书卡片 as B on A.图书编号=B.图书编号
where A.应归还日期<getdate() and A.实际归还日期 is null
go
13.今年未借过书的借书证。
select 读者编号
from 读者
where 读者编号 not in(select 读者编号
from 读者
where datediff(year,借阅日期,getdate())=0)
go

14. 今年那种书出借最多?
select top 1 with ties A.类别,count(1) as '借出数量'
from 图书卡片 A,借阅 B
where datediff(year,B.借阅日期,getdate())=0
group by A.类别
order by 借出数量' desc
go

③ 铃SQL语句统计图书馆一共有多少本图书

这两句都是基础SQL
select count(1) from 图书表
第二句需要几个表的连接,不清楚表结构,不能写,建议你把表结构发出来,一般应该有图书表,学生表,借阅流水表

④ 铃SQL语句统计图书馆一共有多少本图书

咨询记录 · 回答于2021-05-15

⑤ 数据库SQL语句实现下列问题

create proc t1
@dzno int,
@num int output
as
select @num=count(书号) from 借阅 where 读者号=@dzno
return @num
go
create proc t2
@bookname varchar(50),
@author varchar(20)
as
select 出版社,单价 from 图书 a where 书名 =@bookname and 作者=@author
go
create proc t3
@readername varchar(10),
@bookno int
as
declare @num int,@readerno int
select @readerno=读者号 from 读者 where 姓名=@readername
exec t1 @readerno,@num output

if @num>=(select 允许借阅册数 from 读者类别 a, 读者 b where a.姓名=@readername and a.读者类别编号=b.读者类别编号)
begin
print '超出允许借阅册数,不能再借了'
return
end
declare @days int
select @days=允许借阅天数 from 读者类别 a, 读者 b where a.姓名=@readername and a.读者类别编号=b.读者类别编号
print '借阅成功!'
insert into 借阅 values( @readerno,@bookno,getdate(),dateadd(dd,@days,getdate())

⑥ 用SQL设计图书馆信息系统

CREATE TABLE books (
book_id int,
book_name varchar(60),
publisher varchar(60),
author varchar(60),
in_time datatime);

CREATE TABLE reader (
p_id int,
p_name varchar(60),
p_no varchar(60),
p_sex char(1),
is_return char(1),
p_money number(10,2));

CREATE TABLE b_infor (
b_id int,
book_id int,
p_id int,
b_time datetime,
n_time datetime,
is_returned char(1));

CREATE TABLE r_infor (
r_id int,
book_id int,
r_time datetime,
m_date int,
r_money number(10,2));

1,select * from reader where p_name ='姓名';
2,select p_name from reader where is_return=1;
3,select sum(r_money) from r_infor a,b_infor b
where a.book_id=b.book_id and b.p_id='读者号';
4,select distinct b.book_name from b_infor a,books b where a.book_id=b.book_id;

⑦ SQL数据查询,求快速给代码查询谢谢

1.1:
INSERTINTO读者表(借书证号,姓名,性别,部门,类别)VALUES(1110,王彤,女,21303班,学生);
1.2:
UPDATE书籍表SET作者='张三'WHERE书名='数据库导论';
1.3:
DELETEFROM书籍表WHERE书名='英语';

2.1:
SELECT*FROM读者表;
2.2:
SELECT图书,作者FROM书籍表WHERE书名LIKE'%基础%';
2.3:
SELECT姓名,性别,借书证号FROM读者表WHERE部门='21303班'ORDERBY借书证号DESC;
2.4:
SELECTCOUNT(书名)FROM书籍表;
2.5:
SELECTB.姓名,B.部门,C.书名FROM借阅表A
LEFTJOIN读者表BONA.借书证号=B.借书证号
LEFTJOIN书籍表CONA.图书编号=C.图书编号;

⑧ 3.21考虑图3-21中的图书馆数据库。用SQL写出如下查询:

select name from member,book,borrowed where member.memb_no=borrowed.memb_no and book.isbn=borrowed.isbn and borrowed.publisher="xxx"


select name from member where memb_no in&nbsp; (select memb_no from borrowed group by memb_no having count(*) = (select count(*) from book where publisher="xxx"))

select name,publisher from member,borrowed,book group by name,publisher where member.memb_no=borrowed.memb_no
and
book.isbn=borrowed.isbn
having
count(*)&gt;5

select(select count(*) from borrowed)/ (select count(*)from member)

我没有数据, 所以凭空写的, 思路差不多这样吧。有问题私信我吧. 你的列有关键字name,如果是mysql的话加``,sqlserver加[]。

⑨ SQL 图书管理系统的查询语句

1. 求总藏书量、藏书总金额,总库存册数、最高价、最低价。
select count(图书编号) as 总藏书量,
sum(定价) as 藏书总金额,
sum(实际数量) as 总库存册数,
max(定价) as 最高价,
min(定价) as 最低价
from 图书卡片
go
2. 列出藏书在10本以上的书(书名、作者、出版社、年份)。
select 图书名称,作者姓名,出版社,出版日期
from 图书卡片
group by 图书编号 having(coung(1)>10)
order by 图书名称
go
3. 哪些出版社的藏书种类数超过100种。
select 出版社 as '藏书种类数超过100种的出版社'
from 图书卡片
group by 出版社 having(count(类别)>100)
order by 出版社
go
4. 目前实际已借出多少册书?
select sum(借出数量) as '借出数量'
from 图书卡片
go
5. 年份最久远的书。
select top 1 with ties 图书名称 from 图书卡片
order by 出版日期
go
6. “数据库系统原理教程,王珊编,清华大学出版社,1998年出版”还有几本?
select count(1) from 图书卡片
where concaints(摘要,'"数据库系统原理教程,王珊编,清华大学出版社,1998年出版"')
go
7. 哪一年的图书最多?
select top 1 with ties convert(substring(出版日期,1,4)) as 年份,count(1) as '图书数量'
from 图书卡片
group by 出版日期
order by 图书数量 desc
go
8. 哪本借书证未归还的图书最多?
select top 1 with ties A.读者编号,count(1) as '借书数量'
from 图书卡片 A,借阅 B
where A.图书编号=B.图书编号
group by A.读者编号
order by 借书数量 desc
go
9、平均每本借书证的借书册数。
select avg(借阅数量) as '平均每本借书证的借书册数'
from 借阅
go

10.哪个系的同学平均借书册数最多?
select top 1 with ties A.工作单位,avg(借阅数量) as '平均借阅数量'
from 读者 A,借阅 B
where A.读者编号=B.读者编号
group by A.工作单位
order by 平均借阅数量' desc
go

11. 最近两年都未被借过的书。
select 图书名称
from 图书卡片
where 图书编号 in(select 图书编号 from 借阅 where datediff(year,借阅日期,getdate())>2)
go
12. 列出那些借了图书逾期未归还的借书证号和图书名。
select A.读者编号 as '借书证号',B.图书名称
from 读者 as A inner join 图书卡片 as B on A.图书编号=B.图书编号
where A.应归还日期<getdate() and A.实际归还日期 is null
go
13.今年未借过书的借书证。
select 读者编号
from 读者
where 读者编号 not in(select 读者编号
from 读者
where datediff(year,借阅日期,getdate())=0)
go

14. 今年那种书出借最多?
select top 1 with ties A.类别,count(1) as '借出数量'
from 图书卡片 A,借阅 B
where datediff(year,B.借阅日期,getdate())=0
group by A.类别
order by 借出数量' desc
go