(3) 在Borrow表中查询每位借书者所借过图书的数目(包括借过已还的和正在借阅的)
时间: 2024-10-17 08:08:53 浏览: 45
book_borrow_system.zip_Book 2_book borrow_book_borrow system_图书借
在Borrow表中,要查询每位借书者所借过的图书总数,我们需要考虑他们的借书记录是否已经归还。这个查询通常涉及到两个步骤:首先找出每个用户的所有借书记录,然后计算这些记录中未归还的书籍加上已归还书籍的数量。
假设我们有一个Borrow表,包含字段如用户ID (User_ID)、图书ID (Book_ID) 和借阅状态 (Status),其中Status可能是"借出"(未归还)或"已归还"。查询可以编写如下:
```sql
SELECT User_ID, COUNT(Book_ID) AS TotalBooks
FROM Borrow
GROUP BY User_ID;
```
如果需要区分借出和已归还的书籍数量,我们可以添加额外的条件:
```sql
SELECT User_ID,
SUM(CASE WHEN Status = '借出' THEN 1 ELSE 0 END) AS BooksOnLoan,
SUM(CASE WHEN Status = '已归还' THEN 1 ELSE 0 END) AS BooksReturned,
SUM(CASE WHEN Status IN ('借出', '已归还') THEN 1 ELSE 0 END) AS TotalBooks
FROM Borrow
GROUP BY User_ID;
```
这个查询会分别显示借出的书籍数、已归还的书籍数以及总借阅数。
阅读全文