Skip to content

Instantly share code, notes, and snippets.

@minhth1905
Last active June 6, 2019 15:43
Show Gist options
  • Save minhth1905/f8e3a872765561215198aa43df722731 to your computer and use it in GitHub Desktop.
Save minhth1905/f8e3a872765561215198aa43df722731 to your computer and use it in GitHub Desktop.
create or replace PROCEDURE B6(s_id varchar)
AS
query varchar(1000):= 'SELECT GPA(takes.id, takes.semester, takes.year),CPA(takes.id, takes.semester, takes.year,
tinchitichluytheoky(takes.id, takes.semester, takes.year), takes.semester, student.name FROM takes
inner join student on takes.id = student.id
where takes.id = '''||s_id || '''
group by takes.year, takes.semester, takes.id order by takes.year ASC, takes.semester DESC';
cur sys_refcursor;
gpa number(3,2);
cpa number(3,2);
ky varchar(255);
ten varchar(255);
tinchi int;
BEGIN
OPEN cur FOR query;
DBMS_OUTPUT.PUT_LINE(query);
DBMS_OUTPUT.PUT_LINE(rpad('TENSINHVIEN' ,10,' ')||rpad('KY' ,10,' ')||rpad('GPA',8,' ')||rpad('CPA',8,' ')||rpad('TINCHITICHLUYTHEOKY' ,10,' '));
DBMS_OUTPUT.PUT_LINE(rpad('-',160,'-'));
LOOP
FETCH cur INTO gpa, cpa, tinchi, ky, ten;
EXIT WHEN cur%NOTFOUND;
DBMS_OUTPUT.PUT_LINE(rpad(ten,10,' ')||rpad(ky,10,' ')||rpad(gpa,8,' ')||rpad(cpa,8,' ')||rpad(tinchi,10,' '));
END LOOP;
CLOSE cur;
END;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment