SQL>
SQL> create table grades (
2 student_id number,
3 class_id number,
4 assignment_desc varchar2(200),
5 grade_received number(3) );
Table created.
SQL>
SQL> insert into grades values (1,1,'Exam 1',94);
1 row created.
SQL> insert into grades values (7,1,'Exam 1',88);
1 row created.
SQL> insert into grades values (13,1,'Exam 1',98);
1 row created.
SQL> insert into grades values (10,1,'Exam 1',72);
1 row created.
SQL> insert into grades values (4,1,'Exam 1',85);
1 row created.
SQL> insert into grades values (16,1,'Exam 1',90);
1 row created.
SQL> insert into grades values (1,1,'Exam 2',87);
1 row created.
SQL> insert into grades values (7,1,'Exam 2',89);
1 row created.
SQL> insert into grades values (13,1,'Exam 2',93);
1 row created.
SQL> insert into grades values (8,9,'Exam 4',92);
1 row created.
SQL>
SQL> select student_id, avg(grade_received)
2 from grades
3 group by student_id
4 having avg(grade_received) > 89;
STUDENT_ID AVG(GRADE_RECEIVED)
---------- -------------------
1 90.5
8 92
13 95.5
16 90
4 rows selected.
SQL>
SQL> drop table grades;
Table dropped.
SQL>