为每个学生选修课程的平均成绩定义游标对象,并判断如果平均成绩低于70,则输出“考核不合格”,否则输出“通过考核”
时间: 2023-12-25 10:03:49 浏览: 215
好的,这是一个关于游标对象和条件判断的问题。下面是示例代码:
```
DECLARE
avg_grade NUMBER;
pass_fail VARCHAR2(20);
CURSOR c_courses IS
SELECT student_id, AVG(grade) as avg_grade
FROM course_grades
GROUP BY student_id;
BEGIN
FOR course_rec IN c_courses LOOP
avg_grade := course_rec.avg_grade;
IF avg_grade < 70 THEN
pass_fail := '考核不合格';
ELSE
pass_fail := '通过考核';
END IF;
DBMS_OUTPUT.PUT_LINE('学生 ' || course_rec.student_id || ' 的平均成绩为 ' || avg_grade || ',' || pass_fail);
END LOOP;
END;
```
这段代码定义了一个游标对象`c_courses`,它查询了`course_grades`表中每个学生的选修课程平均成绩。然后,对于每个查询结果,它使用条件判断语句判断平均成绩是否低于70,并分别赋值给变量`pass_fail`。最后,使用`DBMS_OUTPUT.PUT_LINE`语句输出结果。
注意:这是一个简单的示例代码,实际应用中可能需要根据具体情况进行修改。
阅读全文