Advertisement
Guest User

Untitled

a guest
Oct 18th, 2017
904
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.09 KB | None | 0 0
  1. --CREATE Database Rental_1402620;
  2.  
  3. use Rental_1402620;
  4.  
  5. CREATE TABLE Owner (
  6.  
  7. ownerID INTEGER PRIMARY KEY,
  8. email VARCHAR(50),
  9. phone VARCHAR(10),
  10. street VARCHAR(50),
  11. town VARCHAR(50),
  12. parish VARCHAR(50)
  13. );
  14.  
  15. Insert into Owner values
  16.  
  17. (1001, 'jansenq@gmail.com', '8765552210', '33 Clue Way',
  18. 'May Pen', 'Clarendon'),
  19. (1002, 'devindoor@gmail.com', '8767779865', 'Baxter Street',
  20. 'Black River', 'St.Elizabeth'),
  21. (1003, 'timronne@gmail.com', '8763314567', 'Tron Avenue',
  22. 'Montego Bay', 'St.James'),
  23. (1004, 'ellioth@gmail.com', '8764447012', '22 Foster Road',
  24. 'Santa Cruz', 'St.Elizabeth'),
  25. (1005, 'qbeelah@gmail.com', '8762105578', '77 Albert Road',
  26. 'Junction', 'St.Elizabeth')
  27.  
  28. INSERT into Owner (email,phone,street) VALUES ('jenmanson@gmail.com',8769980101,"Hope Way")
  29.  
  30.  
  31. CREATE TABLE tenant(
  32.  
  33. TRN INTEGER PRIMARY KEY,
  34. fName VARCHAR(20),
  35. mNmae VARCHAR(20),
  36. lName VARCHAR(20),
  37. referee VARCHAR(30),
  38. employer VARCHAR(50)
  39. );
  40.  
  41. INSERT into tenant (fName,mNmae,lName)VALUES ('Johnn','Raviolo',"Tastee")
  42.  
  43. CREATE TABLE tenant_phone (
  44. phone VARCHAR(10) PRIMARY KEY,
  45. tax_rn INTEGER,
  46. CONSTRAINT fk_tenant_phone FOREIGN KEY (tax_rn) REFERENCES tenant(TRN)
  47.  
  48. );
  49.  
  50. CREATE TABLE Property (
  51. code INTEGER PRIMARY KEY,
  52. dscription VARCHAR(90),
  53. street VARCHAR(50),
  54. town VARCHAR(50),
  55. parish VARCHAR(50),
  56. rPrice MONEY
  57. );
  58.  
  59. INSERT into Owner (rPrice,town,street) VALUES (16000.00,'Liguanea','Hope Pastures')
  60.  
  61.  
  62. CREATE TABLE Residential (
  63. bdrm INTEGER,
  64. bthrm INTEGER,
  65. feature VARCHAR(60),
  66. property_code INTEGER,
  67.  
  68. CONSTRAINT fk_residential FOREIGN KEY (property_code) REFERENCES property(code)
  69.  
  70. );
  71.  
  72. CREATE TABLE persona (
  73.  
  74. ID INT IDENTITY (9000,1) PRIMARY KEY,
  75. first_name VARCHAR(20),
  76. last_name VARCHAR(20)
  77. );
  78.  
  79. Insert into persona (first_name,last_name)
  80. Select fName, lName from tenant
  81.  
  82.  
  83. CREATE TABLE Commercial (
  84. sq_ft NUMERIC,
  85. comm_property_code INTEGER,
  86.  
  87. CONSTRAINT fk_commercial FOREIGN KEY (comm_property_code) REFERENCES property(code)
  88.  
  89. );
  90.  
  91. CREATE TABLE Employee (
  92. empID INTEGER PRIMARY KEY,
  93. fname VARCHAR(20),
  94. lname VARCHAR(25),
  95. gender VARCHAR(3),
  96. commision MONEY,
  97. position VARCHAR(20),
  98. email VARCHAR(50),
  99. SupID INTEGER,
  100.  
  101. CONSTRAINT fk_EMPLOYEE FOREIGN KEY (SupID) REFERENCES Employee(empID)
  102.  
  103. );
  104.  
  105. CREATE TABLE Dependent (
  106. name VARCHAR(50) PRIMARY KEY,
  107. dob DATE,
  108. employee_ID INTEGER,
  109.  
  110. CONSTRAINT fk_dependent FOREIGN KEY (employee_ID) REFERENCES Employee(empID)
  111.  
  112. );
  113.  
  114. CREATE TABLE Owns (
  115. ownersID INTEGER,
  116. prop_code INTEGER,
  117. date_bought DATE PRIMARY KEY,
  118. date_sold DATE,
  119.  
  120. CONSTRAINT fk_owns FOREIGN KEY (ownersID) REFERENCES Owner(ownerID),
  121. CONSTRAINT fk_owns_rship FOREIGN KEY (prop_code) REFERENCES Property(code)
  122.  
  123. );
  124.  
  125. CREATE TABLE Rental (
  126. TRN INTEGER,
  127. code INTEGER,
  128. rental_date DATE,
  129. balance MONEY,
  130. amt_collected MONEY,
  131. empID INTEGER,
  132.  
  133. CONSTRAINT fk_rental FOREIGN KEY (TRN) REFERENCES tenant(TRN),
  134. CONSTRAINT fk_rental2 FOREIGN KEY (code) REFERENCES Property(code),
  135. CONSTRAINT fk_rental3 FOREIGN KEY (empID) REFERENCES Employee(empID)
  136. );
  137.  
  138. ALTER TABLE Property
  139. DROP COLUMN dscription;
  140.  
  141. ALTER TABLE Owner
  142. ADD fullname VARCHAR(50);
  143.  
  144. ALTER TABLE tenant
  145. ADD gender CHAR(1);
  146.  
  147.  
  148. CREATE TABLE dummy_employee (
  149. empID INTEGER PRIMARY KEY,
  150. fname VARCHAR(20),
  151. lname VARCHAR(25),
  152. gender VARCHAR(3),
  153. commision MONEY,
  154. parish VARCHAR(50),
  155. position VARCHAR(20),
  156. email VARCHAR(50),
  157. SupID INTEGER,
  158.  
  159. CONSTRAINT fk_dum_EMPLOYEE FOREIGN KEY (SupID) REFERENCES Employee(empID)
  160.  
  161. );
  162.  
  163. UPDATE dummy_employee SET parish = 'Kingston'
  164.  
  165. UPDATE dummy_employee SET lname = 'Wise' where lname = 'Katt'
  166.  
  167. DELETE FROM dummy_employee WHERE empID = 2550
  168.  
  169. --lab manual 3
  170.  
  171. USE Rental_1402620;
  172.  
  173. SELECT * FROM Commercial;
  174. SELECT * FROM Dependent;
  175. SELECT * FROM Employee;
  176. SELECT * FROM Owner;
  177. SELECT * FROM Owns;
  178. SELECT * FROM Property;
  179. SELECT * FROM Rental;
  180. SELECT * FROM Residential;
  181. SELECT * FROM tenant;
  182. SELECT * FROM tenant_phone;
  183.  
  184. SELECT email, phone FROM Owner;
  185.  
  186. SELECT * FROM Employee where commision > 15
  187.  
  188. SELECT * FROM tenant where gender = 'm'
  189.  
  190. SELECT * FROM tenant where referee = NULL OR employer = NULL
  191.  
  192. SELECT * FROM Owner where parish = 'St.Catherine' OR (parish='St.Andrew') OR (parish='Kingston')
  193.  
  194. SELECT * FROM Property where rPrice > 10000 AND parish = 'Kingston' OR (parish = 'St.Andrew')
  195.  
  196. SELECT fullname,phone FROM owner
  197.  
  198. SELECT * FROM Employee WHERE NOT (lname = 'Allen') AND (position = NULL)
  199.  
  200. SELECT * FROM Dependent ORDER BY dob DESC
  201.  
  202. SELECT fname,lname,position,gender FROM Employee ORDER BY lname DESC, fname DESC, email DESC
  203.  
  204. SELECT * FROM Property ORDER BY rPrice ASC, parish ASC
  205.  
  206. SELECT * FROM Employee where commision > 15 ORDER BY gender ASC, lname ASC, fname ASC
  207.  
  208. SELECT * FROM Property where parish LIKE 'St.%'
  209. --ALTER TABLE Employee
  210. --ADD parish VARCHAR(50);
  211. --SELECT * FROM Employee WHERE NOT (parish LIKE 'St.%')
  212.  
  213. SELECT * FROM Owner WHERE email LIKE '%yahoo' OR (email LIKE '%gmail') AND NOT (parish = 'Kingston') OR NOT (parish = 'St.Andrew')
  214.  
  215. SELECT fName,mNmae,gender,employer FROM tenant WHERE gender ='f' AND(fName LIKE 'a%') ORDER BY lName
  216. SELECT fName,mNmae,gender,employer FROM tenant WHERE gender = 'm' AND (fName LIKE '%aun') order by lName
  217.  
  218. --lab manual 4
  219.  
  220. --exercise 1
  221. -- 1
  222. Select(rPrice * 0.1) as Maintenance from Property
  223. --2
  224. Select (sq_ft * 4000) as rental_price from Commercial where sq_ft > 100
  225. --3
  226. Select ((40 * 1500) + commision) as salary from Employee
  227. --4
  228.  
  229. --exercise 2
  230.  
  231. --a
  232. --number of residential
  233. SELECT COUNT(property_code) from Residential
  234. SELECT COUNT(comm_property_code) from Commercial
  235. SELECT COUNT(code) from Property
  236.  
  237. --b
  238. SELECT AVG(rPrice) as avg_rentalPrice from Property
  239. --c
  240. SELECT MAX(rPrice) from Property
  241. --d
  242. SELECT MIN(rPrice) from Property
  243. --e
  244. SELECT SUM(rPrice) from Property
  245.  
  246. --exercise 3
  247. --1
  248. SELECT COUNT(parish) from Property GROUP BY parish
  249.  
  250. --2
  251. SELECT COUNT(code) from Property GROUP BY parish
  252. --3
  253. SELECT SUM(rPrice) from Property GROUP BY parish
  254.  
  255. --SELECT GETDATE()
  256. --1
  257. insert into Employee (empID,fname,lname,gender,date_hired,dob,parish,commision,position,email) values
  258. (2001,'jay','carter','m','2004-08-12','1980-12-12','St.Elizabeth',0.2,'Clerk','j.carter@gmail.com');
  259.  
  260. insert into Employee (empID,fname,lname,gender,date_hired,dob,parish,commision,position,email) values
  261. (2002,'Trish','Tardair','f','2009-07-08','1990-09-12','St.Andrew',0.2,'Clerk','t.tardair@gmail.com'),
  262. (2003,'Cameron','Khalid','m','2012-01-09','1985-01-15','Manchester',0.2,'Clerk','c.kh@gmail.com'),
  263. (2004,'Tammi','Bell','f','2003-11-22','1991-10-05','St.Catherine',0.2,'Clerk','t.bell@gmail.com'),
  264. (2005,'Niklaus','Cordair','m','2017-10-05','1992-01-02','St.James',0.2,'Clerk','n.cordair@gmail.com');
  265.  
  266. insert into Employee (empID,fname,lname,gender,date_hired,dob,parish,commision,position,email) values
  267. (2006,'walter','white','m','2017-09-12','1998-02-04','St.Andrew',0.2,'Clerk','w.white@gmail.com');
  268. --2
  269. SELECT * from Employee where DateDiff(year,dob,GETDATE()) > 21
  270. --3
  271. insert into Employee (empID,fname,lname,gender,date_hired,dob,parish,commision,position,email) values
  272. (2007,'Tisha','Aneque','f','2017-09-11','2001-02-04','St.Andrew',0.2,'Intern','t.neque@gmail.com');
  273.  
  274. SELECT * from Employee where DateDiff(year,dob,GETDATE()) > 12 AND(DateDiff(year,dob,GETDATE()) < 18)
  275.  
  276. --4
  277. insert into Employee (empID,fname,lname,gender,date_hired,dob,parish,commision,position,email) values
  278. (2008,'Trina','Migo','f','2017-08-13','2001-02-28','Clarendon',0.2,'Intern','third_migo@gmail.com');
  279.  
  280. SELECT(DateDiff(year,dob,GETDATE())) as age ,fname,lname from EMPLOYEE where Month(dob) = 2 AND (DAY(dob) = 28)
  281. --5
  282. Select * from Employee where DateDiff(year,date_hired,GETDATE()) > 10
  283.  
  284. insert into Employee (empID,fname,lname,gender,date_hired,dob,parish,commision,position,email) values
  285. (2009,'Kelly','Angelo','f','2007-05-28','2000-10-06','Manchester',0.2,'Intern','k.ange@gmail.com');
  286.  
  287. select fname,lname from Employee where DateDiff(year,DateADD(month,5,date_hired),GETDATE()) > 10
  288.  
  289. SELECT * from Employee where DateDiff(year,dob,'2017-09-30') >= 18 AND (DateDiff(year,date_hired,GETDATE()) > 10)
  290.  
  291. SELECT ownersID, prop_code, DateDiff(month,date_sold,GETDATE()) from Owns
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement