declare
totalcourgrade real;
begin
totalcourgrade := GetCourseGrade('S07080101');
select tb_grade.stuid 学号,stuname 姓名,sum(coursegrade) 已获学分 from tb_grade,tb_student where tb_student.stuid = tb_grade.stuid
group by tb_grade.stuid,stuname;
dbms_output.put_line(totalcourgrade);
end;
出现以下错误:
select tb_grade.stuid 学号,stuname 姓名,sum(coursegrade) 已获学分 from tb_grade,tb_student where tb_student.stuid = tb_grade.stuid
*
第 7 行出现错误:
ORA-06550: 第 7 行, 第 1 列:
PLS-00428: 在此 SELECT 语句中缺少 INTO 子句
我是想既输出totalcourgrade(总学分),又得到select的查询结果。GetCourseGrade('S07080101')是调用的函数.
请各位大侠帮帮忙啊!急啊!
------解决方案--------------------
DECLARE
totalcourgrade REAL;
v_id VARCHAR2(30);
v_name VARCHAR2(30);
v_score NUMBER;
BEGIN
FOR cc IN (SELECT * FROM tb_student) LOOP
totalcourgrade := GetCourseGrade(cc.stuid);
SELECT tb_grade.stuid, stuname, SUM(coursegrade)
INTO v_id, v_name, v_score
FROM tb_grade, tb_student
WHERE tb_student.stuid = tb_grade.stuid AND
tb_student.stuid = cc.stuid;
dbms_output.put_line('name:'
------解决方案--------------------
v_name
------解决方案--------------------
',id:'
------解决方案--------------------
v_id
------解决方案--------------------
',score:'
------解决方案--------------------
to_char(v_score)
------解决方案--------------------
',total:'
------解决方案--------------------
to_char(totalcourgrade));
END LOOP;
END;
------解决方案--------------------
up
------解决方案--------------------