Advertisement
Guest User

test98SQL

a guest
Nov 24th, 2014
257
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  1. CREATE DATABASE test98;
  2.  
  3. USE test98;
  4.  
  5. CREATE TABLE Student(
  6. stid INT,
  7. name CHAR(50),
  8. surname CHAR(50),
  9. semester INT,
  10. PRIMARY KEY (stid)
  11. );
  12.  
  13. CREATE TABLE Professor(
  14. pid INT,
  15. name CHAR(50),
  16. surname CHAR(50),
  17. PRIMARY KEY (pid)
  18. );
  19.  
  20. CREATE TABLE Course(
  21. cid INT,
  22. title CHAR(50),
  23. pid INT,
  24. PRIMARY KEY (cid),
  25. FOREIGN KEY (pid) REFERENCES Professor (pid) ON UPDATE CASCADE ON DELETE RESTRICT
  26. );
  27.  
  28. CREATE TABLE Exams(
  29. stid INT,
  30. cid INT,
  31. grade FLOAT,
  32. PRIMARY KEY (stid,cid),
  33. FOREIGN KEY (stid) REFERENCES Student (stid) ON UPDATE CASCADE ON DELETE RESTRICT,
  34. FOREIGN KEY (cid) REFERENCES Course (cid) ON UPDATE CASCADE ON DELETE RESTRICT
  35. );
  36.  
  37. CREATE TABLE Req(
  38. cid1 INT,
  39. cid2 INT,
  40. PRIMARY KEY (cid1,cid2),
  41. FOREIGN KEY (cid1) REFERENCES Course (cid) ON UPDATE CASCADE ON DELETE RESTRICT,
  42. FOREIGN KEY (cid2) REFERENCES Course (cid) ON UPDATE CASCADE ON DELETE RESTRICT
  43. );
  44.  
  45. LOAD DATA LOCAL INFILE 'C:\\Users\\username\\Desktop\\loadStudent.txt'
  46. INTO TABLE Student;
  47.  
  48. LOAD DATA LOCAL INFILE 'C:\\Users\\username\\Desktop\\loadProfessor.txt'
  49. INTO TABLE Professor;
  50.  
  51. LOAD DATA LOCAL INFILE 'C:\\Users\\username\\Desktop\\loadCourse.txt'
  52. INTO TABLE Course;
  53.  
  54. LOAD DATA LOCAL INFILE 'C:\\Users\\username\\Desktop\\loadExams.txt'
  55. INTO TABLE Exams;
  56.  
  57. LOAD DATA LOCAL INFILE 'C:\\Users\\username\\Desktop\\loadReq.txt'
  58. INTO TABLE Req;
  59.  
  60. /////////////////////////////////////////////////////////////////////////////////////////////////
  61. SELECT *
  62. FROM Student NATURAL JOIN Exams;
  63.  
  64. SELECT stid,name,surname,semester
  65. FROM Student NATURAL JOIN Exams
  66. WHERE grade>=5 AND
  67. cid=101;
  68.  
  69. SELECT Student.stid,name,surname,semester
  70. FROM Student,Exams
  71. WHERE grade>=5 AND
  72. cid=101 AND
  73. Student.stid=Exams.stid;
  74.  
  75. SELECT Student.stid,Student.name,Student.surname,Exams.grade,Exams.cid,Course.title
  76. FROM Student,Exams,Course
  77. WHERE Student.stid=Exams.stid AND
  78. Course.cid=Exams.cid;
  79.  
  80.  
  81. SELECT *
  82. FROM (Student,Course) NATURAL JOIN Exams;
  83.  
  84. SELECT *
  85. FROM (Student,Course) NATURAL LEFT JOIN Exams
  86. ORDER BY stid,cid;
  87.  
  88. SELECT *
  89. FROM (SELECT * FROM Student,Course) T
  90. NATURAL LEFT JOIN Exams
  91. ORDER BY stid,cid;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement