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

1. Write an SQL query that returns the studentid and name of students who have o

ID: 3593302 • Letter: 1

Question

1. Write an SQL query that returns the studentid and name of students who have overdue books (assume a book is due after 30 days), use construct CURRENT_DATE to access the current date in your query. Do not return any duplicate tuples.
2. Write an SQL query that returns the student id and name of the student(s) whose gpa is higher than the average gpa of all students.

Consider the following library database schema and example instance storing book bookid price total_copies 84.66 uction of Algorit Database System Concepts74.99 Stochastic Calulus for Finance 41.02 Stochastic Calculus for Finance II 55.22 course courseid titl structor text DB Organization Advanced DB Organization Math Finance I Math Finance II student faculty enroll studentid courseid studentid name gpa Tom 3.3 John 38 Mary 3.0 Kris 3.6 Alex 3.5 facultyiod James70000 Sarah60000 Jay80000 Rache 70000 Pau85000 book checkout bookid studentid date 2017-08-29 2017-09-02 2017-09-07 Hints: All the attributes that have integer values are of type INT; numbers with decimal point are of type NUMERIC; the attribute date of book checkout relation is of type DATE; others are of type VARCHAR Attributes with black background form the primary key of an relation The attribute instructorid of relation course is a foreign key to relation facuity, and tertbookid is a foreign key to relation book. The attribute studentid of relation enroll is a foreign key to relation student, and courseid is a foreign key to relation course. The attribute bookid of relation book_checkout is a foreign key to relation book, and studentid is a foreign key to relation student.

Explanation / Answer

-- below commands supports SQL server

1) SELECT DISTINCT(name), studentid FROM STUDENT S INNER JOIN BOOK_CHECKOUT BC ON S.studentid = BC.STUDENTID WHERE DATEDIFF ( day , bc.date , GETDATE() ) > 30

2) SELECT studentid, name FROM STUDENT where gpa > (select AVG(gpa) from student)