Advertisement
Guest User

Untitled

a guest
Oct 19th, 2017
405
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.04 KB | None | 0 0
  1. DROP TABLE Venue;
  2. DROP TABLE Coach;
  3. DROP TABLE Achievement;
  4. DROP TABLE Booking;
  5. DROP TABLE TrainingItems;
  6. DROP TABLE Client;
  7.  
  8. CREATE TABLE Venue(
  9. venueId VARCHAR(20) NOT NULL PRIMARY KEY,
  10. vName CHAR(20) NOT NULL,
  11. telephoneNumber INT NOT NULL,
  12. vAddress VARCHAR(50) NOT NULL,
  13. postcode INT NOT NULL
  14. );
  15.  
  16. CREATE TABLE TrainingItems(
  17. trainingItemsId VARCHAR(20) NOT NULL PRIMARY KEY,
  18. tType VARCHAR(20) NOT NULL
  19. );
  20.  
  21. CREATE TABLE Client(
  22. clientId VARCHAR(20) NOT NULL PRIMARY KEY,
  23. fName VARCHAR(20) NOT NULL,
  24. lName VARCHAR(20) NOT NULL,
  25. phoneNumber INT NOT NULL,
  26. email VARCHAR(30) NOT NULL
  27. );
  28.  
  29. CREATE TABLE Achievement(
  30. achievementId VARCHAR(20) NOT NULL PRIMARY KEY,
  31. aName CHAR(20) NOT NULL,
  32. aType VARCHAR(20) NOT NULL,
  33. aDateAchieved DATE NOT NULL
  34. );
  35.  
  36. CREATE TABLE Booking(
  37. bookingId VARCHAR(20) NOT NULL PRIMARY KEY,
  38. dateOfBooking DATE NOT NULL,
  39. startTime TIME NOT NULL,
  40. totalHoursBooked INT NOT NULL,
  41. totalCost MONEY NOT NULL,
  42. totalPaid MONEY NOT NULL,
  43. paymentStatus VARCHAR(20) NOT NULL,
  44. completionStatus VARCHAR(20) NOT NULL,
  45. travellingTime DECIMAL(10,2) NOT NULL,
  46. clientId VARCHAR(20) FOREIGN KEY REFERENCES Client
  47. );
  48.  
  49. CREATE TABLE Coach(
  50. coachId VARCHAR(20) NOT NULL PRIMARY KEY,
  51. cName CHAR(20) NOT NULL,
  52. cEmail VARCHAR(30) NOT NULL,
  53. cPhoneNumber INT NOT NULL,
  54. cAddress VARCHAR(50) NOT NULL,
  55. postcode INT NOT NULL,
  56. achievementId VARCHAR(20) FOREIGN KEY REFERENCES Achievement,
  57. bookingId VARCHAR(20) FOREIGN KEY REFERENCES Booking,
  58. venueId VARCHAR(20) FOREIGN KEY REFERENCES Venue,
  59. trainingItemsId VARCHAR(20) FOREIGN KEY REFERENCES trainingItems
  60. );
  61.  
  62. INSERT INTO Achievement
  63. VALUES ('a1', 'Hollow Slaying', 'Lieutenant', '1/1/0487');
  64. INSERT INTO Achievement
  65. VALUES ('a2', 'Magic', 'PhD', '8/7/1867');
  66. INSERT INTO Achievement
  67. VALUES ('a3', 'Sharpshooting', 'PhD', '6/18/2015');
  68. INSERT INTO Achievement
  69. VALUES ('a4', 'Programming', 'PhD', '9/16/2017');
  70.  
  71. INSERT INTO Booking
  72. VALUES ('b1', '10/18/2017', '10:00', '2', '1000', '300', 'Partial', 'Complete', '1.2', '1');
  73. INSERT INTO Booking
  74. VALUES ('b2', '10/17/2017', '11:00', '3', '500', '500', 'Paid', 'Incomplete', '0', '2');
  75. INSERT INTO Booking
  76. VALUES ('b3', '10/16/2017', '12:00', '4', '300', '0', 'Not Paid', 'Incomplete', '2', '3');
  77. INSERT INTO Booking
  78. VALUES ('b4', '10/15/2017', '13:00', '2', '100', '50', 'Partial', 'Complete', '0.5', '4');
  79.  
  80. INSERT INTO Venue
  81. VALUES ('v1', 'Sokyoku', '29573817', 'Sokyoku Hill, Soul Society', '6728');
  82. INSERT INTO Venue
  83. VALUES ('v2', 'Kuoh Academy', '29573817', 'Kuoh, Japan', '9268');
  84. INSERT INTO Venue
  85. VALUES ('v3', 'Bonyari High', '29573817', 'Bonyari, Japan', '2245');
  86. INSERT INTO Venue
  87. VALUES ('v4', 'Blacktown Library', '29573817', 'Blacktown, Sydney', '2148');
  88.  
  89. INSERT INTO TrainingItems
  90. VALUES ('t1', 'Slaying');
  91. INSERT INTO TrainingItems
  92. VALUES ('t2', 'Not Science');
  93. INSERT INTO TrainingItems
  94. VALUES ('t3', 'Sports');
  95. INSERT INTO TrainingItems
  96. VALUES ('t4', 'Science');
  97.  
  98. INSERT INTO Client
  99. VALUES ('1', 'Lirin', 'Kinamoto', '0758392010', 'captain@eliteenforcers.com');
  100. INSERT INTO Client
  101. VALUES ('2', 'Akeno', 'Himejima', '0867463529', 'best@girl.com');
  102. INSERT INTO Client
  103. VALUES ('3', 'Chitoge', 'Kirisaki', '0987654321', 'successor@beehive.com');
  104. INSERT INTO Client
  105. VALUES ('4', 'Hiten', 'Bhudia', '0584939587', 'goblinbarrel@gmail.com');
  106.  
  107. INSERT INTO Coach
  108. VALUES ('c1', 'Akimei Izayumi', 'akimeiizayumi@gmail.com', '0293857382', '1 Kido St, Soul Society', '0014', 'a1', 'b1', 'v1', 't1');
  109. INSERT INTO Coach
  110. VALUES ('c2', 'Rosuvaise Wang', 'rosuvaise<3@gmail.com', '0858392948', '654 Demonic St, Valhalla', '0100', 'a2', 'b2', 'v2', 't2');
  111. INSERT INTO Coach
  112. VALUES ('c3', 'Seishiro Tsugumi', 'ojousama@gmail.com', '0843986043', '2 Black Tiger st, Bonyari', '0001', 'a3', 'b3', 'v3', 't3');
  113. INSERT INTO Coach
  114. VALUES ('c4', 'Dylan Wang', 'gibberish69@gmail.com', '0968472658', '4 Trash Can, Sydney', '6996', 'a4', 'b4', 'v4', 't4');
  115.  
  116. /*
  117. SELECT * FROM Venue;
  118. SELECT * FROM Coach;
  119. SELECT * FROM Achievement;
  120. SELECT * FROM TrainingItems;
  121. SELECT * FROM Booking;
  122. SELECT * FROM Client;
  123. */
  124.  
  125. --a
  126. SELECT c.fName, c.lName, b.dateOfBooking
  127. FROM Client c, Booking b
  128. WHERE c.clientId = b.clientId
  129. ORDER BY c.fName;
  130.  
  131. SELECT Client.fName, Client.lName, Booking.dateOfBooking
  132. FROM Client
  133. FULL OUTER JOIN Booking ON Client.clientId = Booking.clientId;
  134.  
  135. --b
  136. SELECT c.cName, b.totalHoursBooked
  137. FROM Coach c, Booking b
  138. WHERE c.bookingId = b.bookingId
  139. ORDER BY c.cName;
  140.  
  141. SELECT Coach.cName, Booking.totalHoursBooked
  142. FROM Coach
  143. FULL OUTER JOIN Booking ON Coach.bookingId = Booking.bookingId;
  144.  
  145. --c
  146. SELECT c.cName, b.dateOfBooking, v.vName, t.fName
  147. FROM Coach c, Booking b, Venue v, Client t
  148. WHERE c.bookingId = b.bookingId
  149. AND c.venueId = v.venueId
  150. AND t.clientId = b.bookingId
  151. AND b.dateOfBooking = '10/1/2017'
  152. ORDER BY c.cName;
  153.  
  154. --d
  155. SELECT c.cName, b.startTime, v.vName, t.trainingItemsId
  156. FROM Coach c, Booking b, Venue v, TrainingItems t
  157. WHERE c.bookingId = b.bookingId
  158. AND c.venueId = v.venueId
  159. AND c.trainingItemsId = t.trainingItemsId
  160. AND b.dateOfBooking = '10/1/2017'
  161. AND b.startTime = '10:00'
  162. ORDER BY c.cName;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement