SELECT s.sid, s.sname, COUNT(s.age) AS age
FROM student s
INNER JOIN enrolled e ON s.sid = e.sid
INNER JOIN class c ON e.ccode = c.ccode
INNER JOIN tutor t ON c.tid = t.tid
WHERE s.programme = 'CIS'
AND t.tname = 'Kathy Bond'
GROUP BY s,sid, s.sname
ORDER BY COUNT(s.age) DESC
LIMIT 1;
I need to find the oldest CIS student that is enrolled in Kathy bond’s class. this is what i’ve got so far, it says it cannot identify an ordering operator? These are the tables:
Class:
ccode | cname | weekday | meets at | room | tid
________________________________________________________________________
CIS166 | Intro to Comp | Tue | 10:00:00 | MB300 | 1
________________________________________________________________________
CIS177 | Maths | Mon | 15:00:00 | MB100 | 6
________________________________________________________________________
CIS188 | Info Syst | Thu | 14:00:00 | MB230 | 5
________________________________________________________________________
CIS199 | Intro to Java | Fri | 10:00:00 | MB300 | 4
________________________________________________________________________
CIS277 | Algorithmics | Thu | 14:00:00 | MB200 | 2
________________________________________________________________________
CIS288 | Database Syst | Mon | 14:00:00 | MB142 | 1
________________________________________________________________________
CIS297 | Web Design | Mon | 16:00:00 | MB109 | 3
________________________________________________________________________
CIS298 | C++ | Fri | 10:00:00 | MB110 | 8
Tutor:
tid | tname
_____________________
1 | Rob Hoffman
_____________________
2 | James Butler
_____________________
3 | Kathy Bond
_____________________
4 | Theodora Stewart
_____________________
5 | Mike Richie
_____________________
6 | John Kay
_____________________
7 | Mary Tregear
_____________________
8 | Mark Robinson
Enrolled:
sid | ccode
______________
211 | CIS288
203 | CIS298
214 | CIS297
105 | CIS177
215 | CIS297
104 | CIS188
210 | CIS297
338 | CIS320
102 | CIS177
338 | CIS399
204 | CIS288
204 | CIS277
102 | CIS199
203 | CIS297
105 | CIS199
331 | CIS320
202 | CIS299
205 | CIS299
210 | CIS298
331 | CIS399
321 | CIS399
210 | CIS288
210 | CIS277
204 | CIS297
321 | CIS320
328 | CIS388
327 | CIS388
211 | CIS297
333 | CIS399
215 | CIS288
104 | CIS199
Student:
sid | sname | programme | level | age
____________________________________________
101 | Lorry Ross | CS | 1 | 18
102 | Lydia Ken | CIS | 1 | 18
103 | Bob Chung | CS | 1 | 18
104 | Sonia Morris | CIS | 1 | 18
105 | Mark Poppy | CS | 1 | 19
106 | Megan Chi | IT | 1 | 20
218 | Diana McDon | IT | 2 | 20
219 | Nick Smith | IT | 2 | 21
I don’t think you need to GROUP BY here. Just ORDER BY and LIMIT 1 should work. Try this: