Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SELECT good.Snum, AVG(Mark) AS MarkAverage
- FROM
- (
- SELECT set1.snum FROM
- (
- SELECT Snum FROM Enrollment,
- (
- SELECT Cnum, Term, Section FROM Enrollment GROUP BY Cnum, Term, Section HAVING COUNT(Snum) > 20
- ) AS c WHERE Enrollment.Cnum = c.Cnum AND Enrollment.Term = c.Term AND Enrollment.Section = c.Section GROUP BY Snum HAVING COUNT(Enrollment.Cnum) > 5
- ) AS set1,
- (
- Snum
- FROM Enrollment
- WHERE Mark > 70
- GROUP BY Snum HAVING COUNT(Enrollment.Cnum) > 10
- ) AS set2,
- (
- SELECT Enrollment.Snum FROM Enrollment,
- (
- SELECT Cnum, Section, Term FROM Enrollment GROUP BY Cnum, Section, Term HAVING COUNT(Snum) > 20
- ) AS c where Enrollment.Term = c.Term AND Enrollment.Cnum = c.Cnum AND Enrollment.Section = c.Section AND Enrollment.snum NOT IN
- (
- SELECT Enrollment.Snum FROM Enrollment,
- (
- SELECT Cnum, Section, Term FROM Enrollment GROUP BY Cnum, Section, Term HAVING COUNT(snum) > 20
- ) AS c where Mark < 85 AND Enrollment.Term = c.Term AND Enrollment.Cnum = c.Cnum AND Enrollment.Section = c.Section
- )
- ) AS set3 WHERE set3.snum = set1.snum AND set2.snum = set1.snum
- ) AS good, Enrollment WHERE Enrollment.Snum = good.Snum GROUP BY good.Snum;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement