数据库问题 搜索和建表

来源:百度知道 编辑:UC知道 时间:2024/06/15 09:55:31
设有如下三个基本表,表结构如下。(数据没有全部给出,写出查询语句即可)
BORROWER:
B_ID Name Dept Class
45001 Shan Information 45-1
45002 Yao Information 45-1
45101 Yun Computer 45-2
……
LOANS:
B_ID Book_ID B_Date
45001 B10101 1999/04/01
45002 B10102 1999/05/01
45001 B10201 1999/05/31
45001 B10101 1999/06/01
45001 B10102 1999/06/02
45002 B10301 1999/06/30
……
BOOKS:
Book_Index BookName Author Book_ID Publisher Price
TP311.13 Database ABC B10101 eee 25.00
TP311.13 Database ABC B10102 eee 25.00
TP.065 Database ABC B10201 rstxyz 10.50
TP.1599 Database DDDDDD B10301 abcdefgh 20.50

1. 检索借了2本书以上的学生的借书证号、姓名 、系名 和借书数量。

2. 检索借书和欧阳同学所借图书中任意一本相同的学生的姓名 、系名(Dept) 、书名和借书日期。

3. 建立信息系学生借书的表, 该表的属性列由借书证号(B_ID)、姓名 、班级、图书登记号(Book_ID)、
书名 、出版社和借书日期组成。

4. 将3题的表变成视图,查询被借次数最多的图书。

1.select a.b_id,a.name,a.dept,count(b.book_id)
from borrower a,loans b
where a.b_id=b.b_id
group by a.b_id,a.name,a.dept
having count(b.book_id)>=2;

2.select a.name,a.dept,c.bookname,b.b.date
from borrower a,loans b,books c,(select distinct book_id from borrower a,loans b where a.b_id=b.b_id and a.name='欧阳') d
where a.b_id=b.b_id and b.book_id=c.book_id and b.book_id=d.book_id;

3.create table info_book as
select a.b_id,a.name,a.class,b.book_id,c.bookname,c.publisher,b.b_date
from borrower a,loans b,books c
where a.b_id=b.b_id and b.book_id=c.book_id and a.dept='information';
第四题没看懂什么意思
4.create view info_book as
select a.b_id,a.name,a.class,b.book_id,c.bookname,c.publisher,b.b_date
from borrower a,loans b,books c
where a.b_id=b.b_id and b.book_id=c.book_id and a.dept='information';
SELECT book_id,bookname,max(cont)
from (select distinct bo