Return the lowest value How do I go about getting the course number (CNO) of all the lowest enrolled by department? 
For example if math had coursenum 123 and the 0 enrolled, and anoher coursenum 555 with 6 enrolled, it would return cno = 123

QUERY 

--get the course number of the lowest course in the department
select select c.cno
from course c, 
     -- number of students per course
(
     select c.dname as tempDname, c.cno as tempCno, count(e.sid) as tempCount
     from course c
     left outer join enroll e
     on e.dname = c.dname and e.cno = c.cno
     group by c.dname, c.cno
) temp
where  c.dname = tempDname and c.cno = 


At the moment I am stuck. The sub query at the moment returns the number of students in each class. 

Sub query returns:
Check out Analytical functions. Here's how you could solve your problem using the RANK() analytical function in Oracle (for simplicity I select from a table called "courses" and not your subquery; the table has the same structure as the one in your picture):

select * from (
    select coursedept, 
           coursenum, 
           numstudent, 
           rank() over(partition by coursedept order by numstudent) num_s_rank 
     from courses
 ) where num_s_rank = 1;


Note that in case of ties multiple rows get the same rank, which means you could get more than one course per department.