Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I need help with this assignment. Please use one query or assignment operator fo

ID: 3875371 • Letter: I

Question

I need help with this assignment. Please use one query or assignment operator for each question.

Consider a library database with the following schema (where primary keys are in parenthesis):

Book( (bookID), ISBN, title, author, publish-year, category)

Member((memberID), (lastname), (firstname), address, phone-number, limit)

CurrentLoan((memberID), (bookID), loan-date, due-date)

History((memberID), (bookID), (loan-date), return-date)

Members can borrow books from the library. The number of books they can borrow is limited by the “limit” field of the Member relation. The category of a book includes fiction, non-fiction, children’s and reference. The CurrentLoan table represents the information about books that are currently checked out. When the book is returned to the library, the record will be removed from CurrentLoad relation, and will be inserted into History relation with the return-date. A library may have more than one copy of the same book, in which case each copy has its own bookID, but all copies share the same ISBN.

Express each of the following tasks in relational algebra.

(5 pts) Find the ISBN and title of all the books authored Arthur Miller.

(8 pts) List the bookID and title of all the books that are currently checked out by John Smith. Do not use any natural join in this query.

(8 pts) Find the first name and last name of the members who are either currently borrowing book “Da Vinci Code” or have borrowed it in the past.

(6 pts) Find the memberID, first name, and last name of the members who have never borrowed any books.

(8 pts) List the first and last names of members who have borrowed (either currently or in the past) all the books in the library that are authored by Arthur Miller. If some books authored by Arthur Miller have multiple copies, he or she must have borrowed at least one copy of each of Arthur Miller’s books.

(5 pts) Find the total number of books for each category (write a single query for this question).  

Explanation / Answer

1. Find the ISBN and title of all the books authored Arthur Miller.

select ISBN,title from Book where author='Miller';

2. List the bookID and title of all the books that are currently checked out by John Smith. Do not use any natural join in this query.

select bookID,title,from Book,Memeber,CurrentLoan where Memeber.firstname='John' and Memeber.lastname='Smith' and CurrentLoan.loandate is not NULL;

3. Find the first name and last name of the members who are either currently borrowing book “Da Vinci Code” or have borrowed it in the past.

select firstname, lastname from Member, Book, CurrentLoan where title='The Vinci Code' and loan-date is not NULL;

4. Find the memberID, first name, and last name of the members who have never borrowed any books.

select memberID, firstname, lastname from Member, CurrentLoan where loan-date = NULL

5. List the first and last names of members who have borrowed (either currently or in the past) all the books in the library that are authored by Arthur Miller. If some books authored by Arthur Miller have multiple copies, he or she must have borrowed at least one copy of each of Arthur Miller’s books.

select firstname, lastname, loan-date,title from Book, Member, History where title = 'Arthur Miller'

6. Find the total number of books for each category (write a single query for this question).  

select category, count(*) from Book