diff --git a/a.sql b/a.sql new file mode 100644 index 0000000..bd2b791 --- /dev/null +++ b/a.sql @@ -0,0 +1,2 @@ +select firstName, lastName +from Students \ No newline at end of file diff --git a/b.sql b/b.sql new file mode 100644 index 0000000..a5db20f --- /dev/null +++ b/b.sql @@ -0,0 +1,3 @@ +select firstName, lastName +from Students +order by lastName, firstName \ No newline at end of file diff --git a/c.sql b/c.sql new file mode 100644 index 0000000..1a4b02f --- /dev/null +++ b/c.sql @@ -0,0 +1,3 @@ +select firstName, lastName +from Students +where pNbr like '1975%' \ No newline at end of file diff --git a/d.sql b/d.sql new file mode 100644 index 0000000..ed901c3 --- /dev/null +++ b/d.sql @@ -0,0 +1,3 @@ +select firstName, pNbr +from Students +where substring(pNbr, LENGTH(pNbr) -1, 1) % 2 = 0 \ No newline at end of file diff --git a/e.sql b/e.sql new file mode 100644 index 0000000..3c37edf --- /dev/null +++ b/e.sql @@ -0,0 +1,2 @@ +select distinct pNbr +from Students \ No newline at end of file diff --git a/f.sql b/f.sql new file mode 100644 index 0000000..83cc0ed --- /dev/null +++ b/f.sql @@ -0,0 +1,3 @@ +select courseName +from Courses +where courseCode like '%FMA%' \ No newline at end of file diff --git a/g.sql b/g.sql new file mode 100644 index 0000000..4b56fd6 --- /dev/null +++ b/g.sql @@ -0,0 +1,3 @@ +select courseName +from Courses +where credits > 5 \ No newline at end of file diff --git a/h.sql b/h.sql new file mode 100644 index 0000000..6dbec39 --- /dev/null +++ b/h.sql @@ -0,0 +1,3 @@ +select courseCode +from TakenCourses +where pNbr = '790101-1234' \ No newline at end of file diff --git a/i.sql b/i.sql new file mode 100644 index 0000000..36256ef --- /dev/null +++ b/i.sql @@ -0,0 +1,4 @@ +select courseName, credits, courseCode, pNbr +from Courses +join Students on Students.pNbr +where pNbr = '790101-1234' \ No newline at end of file diff --git a/j.sql b/j.sql new file mode 100644 index 0000000..82e5a28 --- /dev/null +++ b/j.sql @@ -0,0 +1,4 @@ +select sum(credits) as totalSum +from Courses +join Students on Students.pNbr +where pNbr = '790101-1234' \ No newline at end of file diff --git a/k.sql b/k.sql new file mode 100644 index 0000000..bd15b22 --- /dev/null +++ b/k.sql @@ -0,0 +1,4 @@ +select avg(TakenCourses.grade) as averageGrade, Students.pNbr +from TakenCourses +join Students on TakenCourses.pNbr = Students.pNbr +where TakenCourses.pNbr = '790101-1234' \ No newline at end of file diff --git a/l.sql b/l.sql new file mode 100644 index 0000000..aff9606 --- /dev/null +++ b/l.sql @@ -0,0 +1,5 @@ +select avg(TakenCourses.grade) as averageGrade, TakenCourses.courseCode, Courses.courseName, sum(Courses.credits) as totalCredits +from TakenCourses +join Students on TakenCourses.pNbr = Students.pNbr +join Courses on TakenCourses.courseCode = Courses.courseCode +where Students.firstName = 'Eva Alm' \ No newline at end of file diff --git a/m.sql b/m.sql new file mode 100644 index 0000000..f873fd8 --- /dev/null +++ b/m.sql @@ -0,0 +1,4 @@ +select distinct firstName +from Students +left join TakenCourses on Students.pNbr = TakenCourses.pNbr +where TakenCourses.pNbr is null \ No newline at end of file diff --git a/makefile b/makefile index be6bc14..d94f3db 100644 --- a/makefile +++ b/makefile @@ -1,5 +1,5 @@ DB_NAME := lab.db -SQL_FILES := init.sql lab1.sql +SQL_FILES := init.sql lab1.sql a.sql b.sql c.sql d.sql e.sql f.sql g.sql h.sql i.sql j.sql k.sql l.sql m.sql n.sql .PHONY: all clean diff --git a/n.sql b/n.sql new file mode 100644 index 0000000..ad18e43 --- /dev/null +++ b/n.sql @@ -0,0 +1,7 @@ +select Students.firstName, max(averageGrade) as maxAverage +from ( + select Students.pNbr, TakenCourses.grade, avg(grade) as averageGrade + from Students + join TakenCourses on Students.pNbr = TakenCourses.pNbr + group by Students.pNbr +) as studentAverages \ No newline at end of file