Database
HIT 234 Assignment 1
Submission Details:
For Internal and External students: submission is via Learnline. Instructions on how to submit the assignment is located under Assessments / Guidelines.
Please answer all questions.
Part A - Single and multiple table queries
Value: 6%
For the first five questions you have to provide your answer in the form of a SQL statement, with description before as necessary. For example:
-
Example Question: Select all columns from the `Customer` table
Example Answer:
-- This answer will select out all the columns from the Customer table
SELECT * from Customer;
Questions 1 – 5:
Worth 3% of the total marks
-
List in ascending order the Last Names of all borrowers with Card Number less than 150.
-
What are the records of those loans between 3 June 2014 and 8 Mar 2018?
-
-
The output should include the name of the cardholder, and title of the book
-
List in ascending order by last name and first name
-
-
Find the total numbers of loans with last name beginning with D through E (including E); include last name beginning with Q as well as Z also.
-
Find all borrowers for a loan that have the Date-in before 15-March-15 and the Card number between 100 and 300 in Karama or Darwin.
-
Find the number of loans, which have been made from each branch?
-
-
Note all branches need to be included even those with no loans
-
Question 6:
Worth 3% of the total marks
-
Create your own question based on the library database, and also provide a SQL Statement to answer your question.
Part B – Table and Advanced Queries
Value: 4%
The questions are broken into: Q1 (4 marks), Q2 (3 marks), Q3 and Q4 (3 marks). For all questions, provide the answer in the form of a SQL statement, with description before as necessary.
Questions
|
NOTES |
|
Questions 1 and 2 require you to answer in the form of a SQL statement to create a table and insert data into it. The question and answer is only about the statements to create and put data into the `Occurrence_Exercise` table, however it is recommended that you create the statements to create and insert data into all 3 tables, so that you can test that your statements are correct. Please only provide in your answer the SQL statement for the `Occurrence_Exercise` table. |
|
To understand the terminology:
So to understand the weight you would lift for a single exercise in the Exercise attempt table you would need to consider the rep multiplied by attempts by the weight. So for a single attempt: e.g. for 9001 rep multiplied by attempts by the weight 8 reps x 3 attempts x 15kg = 360 total kg’s lifted |
-
The following Gym application database for weight session recording is as follows. Write and run SQL statements for creating the Occurrence_Exercise table.
-
-
Include constraint values for the Condition Column: Heavy, Medium, Light
-
-
Write an SQL statement that will insert the data into Occurrence_Exercise table only.
-
-
Definition of rep stands for repetition.
-
Each exercise attempt has the rep number as indicated in the occurrence table.
-
Occurrence Table
|
OccurrenceID |
Occ_Date |
Occ_Place |
Occ_Start_Time |
Occ_Finish_Time |
|
1 |
14/03/18 |
University_Gym |
16:00:00 |
16:30:00 |
|
2 |
15/03/18 |
University_Gym |
16:30:00 |
17:00:00 |
|
3 |
16/03/18 |
University_Gym |
16:10:00 |
17:20:00 |
|
4 |
17/03/18 |
Home |
07:00:00 |
08:00:00 |
|
5 |
17/03/18 |
University_Gym |
17:00:00 |
18:00:00 |
Occurrence_Exercise Table
|
OccExID |
ExerciseNo |
OccurrenceID |
Rep |
Attempt1 |
Attempt2 |
Attempt3 |
Condition |
|
9001 |
001A |
1 |
8 |
15 |
15 |
15 |
Light |
|
9002 |
002A |
1 |
8 |
70 |
75 |
70 |
Medium |
|
9003 |
003A |
2 |
12 |
90 |
95 |
90 |
Heavy |
|
9004 |
004A |
3 |
12 |
200 |
200 |
200 |
Medium |
|
9005 |
006A |
3 |
8 |
110 |
110 |
115 |
Heavy |
|
9006 |
005A |
4 |
10 |
20 |
25 |
|
Medium |
|
9007 |
001A |
4 |
8 |
10 |
12 |
10 |
Medium |
|
9008 |
002A |
5 |
8 |
85 |
90 |
115 |
Heavy |
Exercise Table
|
ExerciseNo |
ExerciseDescription |
ExerciseType |
|
001A |
Situps |
Abs |
|
002A |
Bench Press |
Chest |
|
003A |
Dead Lifts |
Back |
|
004A |
Leg Press |
Legs |
|
005A |
Seated Shoulder Press |
Shoulders |
|
006A |
Squats |
Legs |
|
007A |
Lat pull downs |
Lats |
Create the following queries:
-
Find the exercise which contains the maximum total weight lifted
-
-
Show: Exercise, Maximum weight
-
Ensure you show captions for each of the columns
-
Hint: you would need to consider the number of times the weight is lifted and weight e.g. rep multiplied by attempt multiplied by the weight
-
-
Find the exercise that the user was not able to complete 3 attempts in, or the exercise that the user has not attempted.
-
-
Show appropriate columns
-
List in ascending order exercise type
-
Do not show repeated names
-
Ensure you show captions for each of the columns
-
Part C – All Topics
Value: 10%
For the first four questions refer to the Library Database. For question 5 refer to CDU Customer Invoice Database.
The questions are broken into: Q1-4 (6 marks) and Q5 (4 marks).
For all questions, provide the answer in the form of a SQL statement, with description before as necessary.
Questions Using the Library Database
-
What are the 5 most popular books?
-
-
Show ASBN, Title.
-
HINT: To limit results use ROWNUM.
-
-
Which branches currently have no loans out?
-
-
Show all branch names.
-
List in ascending order by branch.
-
-
Find the longest time a book has been loaned out for each branch
-
-
Show only branch name and number of days.
-
List in ascending order by branch name.
-
Show all branches, even if there are no loaned out books. Therefore, a branch may have a null value for the longest loaded out book.
-
Format the number of days to one decimal place.
-
-
Find the borrower that has returned a book on the dated 16 December 2010 and 8 May 2012
-
-
Show two different methods.
-
Question Using the CDU Customer Invoice Database
-
Devise a delete query, which will eliminate duplicates for customer columns `ID`, `CustomerLastName`, `CustomerFirstName` and invoice columns `Invoice_Date` and `Invoice_No`.
-
-
Ensure the query removes all duplicate data.
-
HIT 234 Assignment 1 – Due Date: Friday, Week 7