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 (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(*)>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